summaryrefslogtreecommitdiffstats
path: root/chrome/test/in_process_browser_test.cc
diff options
context:
space:
mode:
authornick@chromium.org <nick@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2010-04-15 22:28:18 +0000
committernick@chromium.org <nick@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2010-04-15 22:28:18 +0000
commit20d241c33c3e6c1be8ab4023dfa46d6a4fdb4766 (patch)
treeeabbd6105323cfff531bf12d92feeccaa9f6fe40 /chrome/test/in_process_browser_test.cc
parent9aae0f1396b3a9f6c228326b3770c94e741b1bd9 (diff)
downloadchromium_src-20d241c33c3e6c1be8ab4023dfa46d6a4fdb4766.zip
chromium_src-20d241c33c3e6c1be8ab4023dfa46d6a4fdb4766.tar.gz
chromium_src-20d241c33c3e6c1be8ab4023dfa46d6a4fdb4766.tar.bz2
Revert 44708 - Python implementation of sync server, for testing.
Implement the server side of chromium sync inside of testserver.py. The implementation supports at most one account (and ignores authentication credentials), but is otherwise reasonably full featured. Make the sync_integration_tests run by default against the test server. An externallyprovided syncurl will give the old behavior. Protocol buffers stuff: The test sync server requires Python generated code for .proto files. I've put generated code, as well as the python protocol buffers runtime library, in the output directory + "/python" (e.g, on windows, src/chrome/Debug/python/google/protobuf). This might be a bad place, or a bad name open to suggestions. The main thing is that there will be runtime dependencies on it, so it didn't seem right to put it in obj/. Flakiness fix: In the InProcessBrowserTest framework, improve the mechanism for tests that want to manually set up a user data directory. The new way ensures that the user data directory is always wiped; tests can't accidentally forget to do this anymore. Flakiness fix: Make testserver try to /kill any old instance that might be hogging the port. Very useful if a test failure leaves a server running. Tested this against all combos of protocols, and it seems to work. Flakiness fix: Port sync_integration_tests to the outofprocess test runner. Flakiness fix: For IN_PROC_BROWSER_TESTS, don't run the test body if the setup triggered a fatal (ASSERT_) failure. BUG=20905,40980 Review URL: http://codereview.chromium.org/1622012 TBR=nick@chromium.org Review URL: http://codereview.chromium.org/1633015 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@44714 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome/test/in_process_browser_test.cc')
-rw-r--r--chrome/test/in_process_browser_test.cc12
1 files changed, 4 insertions, 8 deletions
diff --git a/chrome/test/in_process_browser_test.cc b/chrome/test/in_process_browser_test.cc
index ee5923e..7463476 100644
--- a/chrome/test/in_process_browser_test.cc
+++ b/chrome/test/in_process_browser_test.cc
@@ -93,14 +93,12 @@ void InProcessBrowserTest::SetUp() {
"The user data directory name passed into this test was too "
"short to delete safely. Please check the user-data-dir "
"argument and try again.";
- ASSERT_TRUE(file_util::DieFileDie(user_data_dir, true));
+ if (ShouldDeleteProfile())
+ ASSERT_TRUE(file_util::DieFileDie(user_data_dir, true));
// The unit test suite creates a testingbrowser, but we want the real thing.
// Delete the current one. We'll install the testing one in TearDown.
delete g_browser_process;
- g_browser_process = NULL;
-
- SetUpUserDataDirectory();
// Don't delete the resources when BrowserMain returns. Many ui classes
// cache SkBitmaps in a static field so that if we delete the resource
@@ -142,7 +140,7 @@ void InProcessBrowserTest::SetUp() {
ASCIIToWide(kBrowserTestType));
// Single-process mode is not set in BrowserMain so it needs to be processed
- // explicitly.
+ // explicitlty.
original_single_process_ = RenderProcessHost::run_renderer_in_process();
if (command_line->HasSwitch(switches::kSingleProcess))
RenderProcessHost::set_run_renderer_in_process(true);
@@ -280,9 +278,7 @@ void InProcessBrowserTest::RunTestOnMainThreadLoopDeprecated() {
NewRunnableMethod(this, &InProcessBrowserTest::TimedOut),
initial_timeout_);
- // If an ASSERT_ failed during SetUp, skip the InProcessBrowserTest test body.
- if (!HasFatalFailure())
- RunTestOnMainThread();
+ RunTestOnMainThread();
CleanUpOnMainThread();
// Close all browser windows. This might not happen immediately, since some