Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(725)

Unified Diff: net/test/embedded_test_server/embedded_test_server_unittest.cc

Issue 1093993003: Allow embedded_test_server to serve from multiple directories (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: fix iOS Created 5 years, 8 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « net/test/embedded_test_server/embedded_test_server.cc ('k') | no next file » | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: net/test/embedded_test_server/embedded_test_server_unittest.cc
diff --git a/net/test/embedded_test_server/embedded_test_server_unittest.cc b/net/test/embedded_test_server/embedded_test_server_unittest.cc
index efa4b0c2211adf0438277c78455dedbcf43bf247..0db00ce32803f54c5b2c6e2e2956f962423e21cb 100644
--- a/net/test/embedded_test_server/embedded_test_server_unittest.cc
+++ b/net/test/embedded_test_server/embedded_test_server_unittest.cc
@@ -173,6 +173,48 @@ TEST_F(EmbeddedTestServerTest, ServeFilesFromDirectory) {
EXPECT_EQ("", GetContentTypeFromFetcher(*fetcher));
}
+TEST_F(EmbeddedTestServerTest, ServeFilesFromDirectories) {
+ base::FilePath src_dir;
+ ASSERT_TRUE(PathService::Get(base::DIR_SOURCE_ROOT, &src_dir));
+ std::vector<base::FilePath> src_dirs;
+ src_dirs.push_back(src_dir.AppendASCII("net").AppendASCII("data"));
+ src_dirs.push_back(src_dir.AppendASCII("net").AppendASCII("data")
+ .AppendASCII("embedded_test_server"));
+ server_->ServeFilesFromDirectories(src_dirs);
+
+ // There is also a file named "test.html" in directory
+ // "embedded_test_server", but the one in net/data should match.
+ scoped_ptr<URLFetcher> fetcher(URLFetcher::Create(
+ server_->GetURL("/test.html"), URLFetcher::GET, this));
+ fetcher->SetRequestContext(request_context_getter_.get());
+
+ scoped_ptr<URLFetcher> fetcher2(URLFetcher::Create(
+ server_->GetURL("/test2.html"), URLFetcher::GET, this));
+ fetcher2->SetRequestContext(request_context_getter_.get());
+
+ scoped_ptr<URLFetcher> fetcher3(URLFetcher::Create(
+ server_->GetURL("/test3.html"), URLFetcher::GET, this));
+ fetcher3->SetRequestContext(request_context_getter_.get());
+
+ fetcher->Start();
+ fetcher2->Start();
+ fetcher3->Start();
+ WaitForResponses(3);
+
+ EXPECT_EQ(URLRequestStatus::SUCCESS, fetcher->GetStatus().status());
+ EXPECT_EQ(HTTP_OK, fetcher->GetResponseCode());
+ EXPECT_EQ("<p>Hello World!</p>", GetContentFromFetcher(*fetcher));
+ EXPECT_EQ("", GetContentTypeFromFetcher(*fetcher));
+
+ EXPECT_EQ(URLRequestStatus::SUCCESS, fetcher2->GetStatus().status());
+ EXPECT_EQ(HTTP_OK, fetcher2->GetResponseCode());
+ EXPECT_EQ("<p>Second file</p>", GetContentFromFetcher(*fetcher2));
+ EXPECT_EQ("", GetContentTypeFromFetcher(*fetcher2));
+
+ EXPECT_EQ(URLRequestStatus::SUCCESS, fetcher3->GetStatus().status());
+ EXPECT_EQ(HTTP_NOT_FOUND, fetcher3->GetResponseCode());
+}
+
TEST_F(EmbeddedTestServerTest, DefaultNotFoundResponse) {
scoped_ptr<URLFetcher> fetcher(
URLFetcher::Create(server_->GetURL("/non-existent"),
« no previous file with comments | « net/test/embedded_test_server/embedded_test_server.cc ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698