summaryrefslogtreecommitdiffstats
path: root/chrome_frame
diff options
context:
space:
mode:
authorphajdan.jr@chromium.org <phajdan.jr@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2010-08-17 20:07:11 +0000
committerphajdan.jr@chromium.org <phajdan.jr@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2010-08-17 20:07:11 +0000
commit95409e1020037b0bbfbce17f861d3de090d10186 (patch)
tree90a893af1247b1d4a3767c5ab14aae797f467946 /chrome_frame
parent701e869b30deffda579c5c413cf1d73defee34fa (diff)
downloadchromium_src-95409e1020037b0bbfbce17f861d3de090d10186.zip
chromium_src-95409e1020037b0bbfbce17f861d3de090d10186.tar.gz
chromium_src-95409e1020037b0bbfbce17f861d3de090d10186.tar.bz2
Test server cleanup patch of death:
- reduce the number of different classes - clean up the internal code - modify the interface to expose less internal details (this will allow more flexibility with port numbers) TEST=many BUG=49680 Review URL: http://codereview.chromium.org/3080029 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@56405 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome_frame')
-rw-r--r--chrome_frame/test/http_server.cc21
-rw-r--r--chrome_frame/test/http_server.h6
-rw-r--r--chrome_frame/test/run_all_unittests.cc4
-rw-r--r--chrome_frame/test/test_with_web_server.cc8
4 files changed, 16 insertions, 23 deletions
diff --git a/chrome_frame/test/http_server.cc b/chrome_frame/test/http_server.cc
index 48f88e7..c93b01f 100644
--- a/chrome_frame/test/http_server.cc
+++ b/chrome_frame/test/http_server.cc
@@ -13,10 +13,12 @@
const wchar_t kDocRoot[] = L"chrome_frame\\test\\data";
+ChromeFrameHTTPServer::ChromeFrameHTTPServer()
+ : test_server_(net::TestServer::TYPE_HTTP, FilePath(kDocRoot)) {
+}
+
void ChromeFrameHTTPServer::SetUp() {
- std::wstring document_root(kDocRoot);
- server_ = net::HTTPTestServer::CreateServer(document_root);
- ASSERT_TRUE(server_ != NULL);
+ ASSERT_TRUE(test_server_.Start());
// copy CFInstance.js into the test directory
FilePath cf_source_path;
@@ -37,9 +39,7 @@ void ChromeFrameHTTPServer::SetUp() {
}
void ChromeFrameHTTPServer::TearDown() {
- if (server_) {
- server_ = NULL;
- }
+ test_server_.Stop();
// clobber CFInstance.js
FilePath cfi_path;
@@ -64,17 +64,14 @@ void ChromeFrameHTTPServer::TearDown() {
}
bool ChromeFrameHTTPServer::WaitToFinish(int milliseconds) {
- if (!server_)
- return true;
-
- return server_->WaitToFinish(milliseconds);
+ return test_server_.WaitToFinish(milliseconds);
}
// TODO(phajdan.jr): Change wchar_t* to std::string& and fix callers.
GURL ChromeFrameHTTPServer::Resolve(const wchar_t* relative_url) {
- return server_->TestServerPage(WideToUTF8(relative_url));
+ return test_server_.GetURL(WideToUTF8(relative_url));
}
FilePath ChromeFrameHTTPServer::GetDataDir() {
- return server_->GetDataDirectory();
+ return test_server_.document_root();
}
diff --git a/chrome_frame/test/http_server.h b/chrome_frame/test/http_server.h
index 30b3d19..a6dae20 100644
--- a/chrome_frame/test/http_server.h
+++ b/chrome_frame/test/http_server.h
@@ -17,16 +17,18 @@ class FilePath;
// Chrome Frame specilization of http server from net.
class ChromeFrameHTTPServer {
public:
+ ChromeFrameHTTPServer();
+
void SetUp();
void TearDown();
bool WaitToFinish(int milliseconds);
GURL Resolve(const wchar_t* relative_url);
FilePath GetDataDir();
- net::HTTPTestServer* server() { return server_; }
+ net::TestServer* test_server() { return &test_server_; }
protected:
- scoped_refptr<net::HTTPTestServer> server_;
+ net::TestServer test_server_;
};
#endif // CHROME_FRAME_TEST_HTTP_SERVER_H_
diff --git a/chrome_frame/test/run_all_unittests.cc b/chrome_frame/test/run_all_unittests.cc
index a22d4f5..b25b5ae 100644
--- a/chrome_frame/test/run_all_unittests.cc
+++ b/chrome_frame/test/run_all_unittests.cc
@@ -51,12 +51,12 @@ int main(int argc, char **argv) {
if (CommandLine::ForCurrentProcess()->HasSwitch(kRunAsServer)) {
ChromeFrameHTTPServer server;
server.SetUp();
- GURL server_url(server.server()->TestServerPage(""));
+ GURL server_url(server.test_server()->GetURL(""));
std::cout << std::endl
<< "Server waiting on " << server_url.spec().c_str()
<< std::endl << std::endl
<< "Test output will be written to "
- << server.server()->GetDataDirectory().value().c_str() << "\\dump"
+ << server.test_server()->document_root().value() << "\\dump"
<< std::endl << std::endl
<< "Hit Ctrl-C or navigate to "
<< server_url.spec().c_str() << "kill to shut down the server."
diff --git a/chrome_frame/test/test_with_web_server.cc b/chrome_frame/test/test_with_web_server.cc
index dead3d2..16ba8b3 100644
--- a/chrome_frame/test/test_with_web_server.cc
+++ b/chrome_frame/test/test_with_web_server.cc
@@ -85,11 +85,7 @@ void ChromeFrameTestWithWebServer::SetUp() {
.Append(FILE_PATH_LITERAL("data"));
server_.SetUp();
- EXPECT_TRUE(server_.server() != NULL);
- if (server_.server()) {
- results_dir_ = server_.GetDataDir();
- results_dir_ = results_dir_.AppendASCII("dump");
- }
+ results_dir_ = server_.test_server()->document_root().AppendASCII("dump");
}
void ChromeFrameTestWithWebServer::TearDown() {
@@ -100,7 +96,6 @@ void ChromeFrameTestWithWebServer::TearDown() {
bool ChromeFrameTestWithWebServer::LaunchBrowser(BrowserKind browser,
const wchar_t* page) {
- EXPECT_TRUE(server_.server() != NULL);
std::wstring url = page;
if (url.find(L"files/") != std::wstring::npos)
url = UTF8ToWide(server_.Resolve(page).spec());
@@ -163,7 +158,6 @@ bool ChromeFrameTestWithWebServer::BringBrowserToTop() {
}
bool ChromeFrameTestWithWebServer::WaitForTestToComplete(int milliseconds) {
- EXPECT_TRUE(server_.server() != NULL);
return server_.WaitToFinish(milliseconds);
}