diff options
author | timurrrr@chromium.org <timurrrr@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2010-04-30 14:50:58 +0000 |
---|---|---|
committer | timurrrr@chromium.org <timurrrr@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2010-04-30 14:50:58 +0000 |
commit | 298883bc55dec7bbcb59897b919d9e07691d0da9 (patch) | |
tree | 36ef93371d363ce52e171043133ea56fe8fc48d2 /chrome/test/live_sync | |
parent | 2144db715de5552a67f34552c36a5cb3dba2ebd8 (diff) | |
download | chromium_src-298883bc55dec7bbcb59897b919d9e07691d0da9.zip chromium_src-298883bc55dec7bbcb59897b919d9e07691d0da9.tar.gz chromium_src-298883bc55dec7bbcb59897b919d9e07691d0da9.tar.bz2 |
Re-apply http://codereview.chromium.org/1622012
It was reverted as http://codereview.chromium.org/1822001 the fix in Valgrind scripts has been commited as http://codereview.chromium.org/1736026
TEST=trybots
Review URL: http://codereview.chromium.org/1763023
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@46070 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome/test/live_sync')
-rw-r--r-- | chrome/test/live_sync/live_sync_test.h | 23 | ||||
-rw-r--r-- | chrome/test/live_sync/two_client_live_bookmarks_sync_test.cc | 42 |
2 files changed, 41 insertions, 24 deletions
diff --git a/chrome/test/live_sync/live_sync_test.h b/chrome/test/live_sync/live_sync_test.h index 9fd3373..cb11795 100644 --- a/chrome/test/live_sync/live_sync_test.h +++ b/chrome/test/live_sync/live_sync_test.h @@ -12,6 +12,7 @@ #include "chrome/common/chrome_switches.h" #include "chrome/test/in_process_browser_test.h" #include "googleurl/src/gurl.h" +#include "net/socket/ssl_test_util.h" class BookmarkModel; class BookmarkNode; @@ -45,10 +46,30 @@ class LiveSyncTest : public InProcessBrowserTest { ASSERT_FALSE(password_.empty()) << "Can't run live server test " << "without specifying --" << switches::kSyncPasswordForTest; + // Unless a sync server was explicitly provided, run a test one locally. + // TODO(ncarter): It might be better to allow the user to specify a choice + // of sync server "providers" -- a script that could locate (or allocate) + // a sync server instance, possibly on some remote host. The provider + // would be invoked before each test. + if (!cl->HasSwitch(switches::kSyncServiceURL)) + SetUpLocalTestServer(); + // Yield control back to the InProcessBrowserTest framework. InProcessBrowserTest::SetUp(); } + virtual void SetUpLocalTestServer() { + bool success = server_.Start(net::TestServerLauncher::ProtoHTTP, + server_.kHostName, server_.kOKHTTPSPort, + FilePath(), FilePath(), std::wstring()); + ASSERT_TRUE(success); + + CommandLine* cl = CommandLine::ForCurrentProcess(); + cl->AppendSwitchWithValue(switches::kSyncServiceURL, + StringPrintf("http://%s:%d/chromiumsync", server_.kHostName, + server_.kOKHTTPSPort)); + } + // Append command line flag to enable sync. virtual void SetUpCommandLine(CommandLine* command_line) { } @@ -78,6 +99,8 @@ class LiveSyncTest : public InProcessBrowserTest { // to override the default resolver while the test is active. scoped_ptr<net::ScopedDefaultHostResolverProc> mock_host_resolver_override_; + net::TestServerLauncher server_; + DISALLOW_COPY_AND_ASSIGN(LiveSyncTest); }; diff --git a/chrome/test/live_sync/two_client_live_bookmarks_sync_test.cc b/chrome/test/live_sync/two_client_live_bookmarks_sync_test.cc index 47300bf..62f5b37 100644 --- a/chrome/test/live_sync/two_client_live_bookmarks_sync_test.cc +++ b/chrome/test/live_sync/two_client_live_bookmarks_sync_test.cc @@ -50,11 +50,6 @@ class TwoClientLiveBookmarksSyncTest : public LiveSyncTest { } } - // Overwrites ShouldDeleteProfile, so profile doesn't get deleted. - virtual bool ShouldDeleteProfile() { - return false; - } - // Overload this method in inherited class and return false to avoid // race condition (two clients trying to sync/commit at the same time). // Race condition may lead to duplicate bookmarks if there is existing @@ -94,7 +89,8 @@ class TwoClientLiveBookmarksSyncTest : public LiveSyncTest { FILE_PATH_LITERAL("live_sync_data")); FilePath source_file = sync_data_source.Append( bookmarks_file_name); - ASSERT_TRUE(file_util::PathExists(source_file)); + ASSERT_TRUE(file_util::PathExists(source_file)) + << "Could not locate test data file: " << source_file.value(); // Now copy pre-generated bookmark file to default profile. ASSERT_TRUE(file_util::CopyFile(source_file, dest_user_data_dir_default.Append(FILE_PATH_LITERAL("bookmarks")))); @@ -151,9 +147,10 @@ class LiveSyncTestPrePopulatedHistory1K LiveSyncTestPrePopulatedHistory1K() {} virtual ~LiveSyncTestPrePopulatedHistory1K() {} - // This is used to pre-populate history data (1K URL Visit)to Client1 - // and Verifier Client. - void PrePopulateHistory1K() { + // This is used to pre-populate history data (1K URL Visit) to Client1 + // and Verifier Client. Invoked by InProcBrowserTest::SetUp before + // the browser is started. + virtual void SetUpUserDataDirectory() { // Let's copy history files to default profile. FilePath dest_user_data_dir; PathService::Get(chrome::DIR_USER_DATA, &dest_user_data_dir); @@ -182,11 +179,6 @@ class LiveSyncTestPrePopulatedHistory1K } } - virtual void SetUp() { - PrePopulateHistory1K(); - LiveSyncTest::SetUp(); - } - private: DISALLOW_COPY_AND_ASSIGN(LiveSyncTestPrePopulatedHistory1K); }; @@ -197,10 +189,10 @@ class LiveSyncTestBasicHierarchy50BM LiveSyncTestBasicHierarchy50BM() {} virtual ~LiveSyncTestBasicHierarchy50BM() {} - virtual void SetUp() { + // Invoked by InProcBrowserTest::SetUp before the browser is started. + virtual void SetUpUserDataDirectory() { FilePath file_name(FILE_PATH_LITERAL("bookmarks_50BM5F3L")); PrePopulateBookmarksHierarchy(file_name); - LiveSyncTest::SetUp(); } private: @@ -233,10 +225,11 @@ class LiveSyncTestComplexHierarchy800BM public: LiveSyncTestComplexHierarchy800BM() {} virtual ~LiveSyncTestComplexHierarchy800BM() {} - virtual void SetUp() { + + // Invoked by InProcBrowserTest::SetUp before the browser is started. + virtual void SetUpUserDataDirectory() { FilePath file_name(FILE_PATH_LITERAL("bookmarks_800BM32F8L")); - TwoClientLiveBookmarksSyncTest::PrePopulateBookmarksHierarchy(file_name); - LiveSyncTest::SetUp(); + PrePopulateBookmarksHierarchy(file_name); } private: @@ -248,10 +241,11 @@ class LiveSyncTestHugeHierarchy5500BM public: LiveSyncTestHugeHierarchy5500BM() {} virtual ~LiveSyncTestHugeHierarchy5500BM() {} - virtual void SetUp() { + + // Invoked by InProcBrowserTest::SetUp before the browser is started. + virtual void SetUpUserDataDirectory() { FilePath file_name(FILE_PATH_LITERAL("bookmarks_5500BM125F25L")); - TwoClientLiveBookmarksSyncTest::PrePopulateBookmarksHierarchy(file_name); - LiveSyncTest::SetUp(); + PrePopulateBookmarksHierarchy(file_name); } virtual bool ShouldSetupSyncWithRace() { return false; @@ -267,11 +261,11 @@ class LiveSyncTestDefaultIEFavorites LiveSyncTestDefaultIEFavorites() {} virtual ~LiveSyncTestDefaultIEFavorites() {} - virtual void SetUp() { + // Invoked by InProcBrowserTest::SetUp before the browser is started. + virtual void SetUpUserDataDirectory() { const FilePath file_name( FILE_PATH_LITERAL("bookmarks_default_IE_favorites")); TwoClientLiveBookmarksSyncTest::PrePopulateBookmarksHierarchy(file_name); - LiveSyncTest::SetUp(); } private: |