| Index: chrome/browser/sync/test/integration/two_client_search_engines_sync_test.cc
|
| diff --git a/chrome/browser/sync/test/integration/two_client_search_engines_sync_test.cc b/chrome/browser/sync/test/integration/two_client_search_engines_sync_test.cc
|
| index 710eaf492b7f9ba6be0e37684f7789bcbfe0f411..5fb09f0cfc108575cc2055f2eab56488155d0d9b 100644
|
| --- a/chrome/browser/sync/test/integration/two_client_search_engines_sync_test.cc
|
| +++ b/chrome/browser/sync/test/integration/two_client_search_engines_sync_test.cc
|
| @@ -54,6 +54,29 @@ IN_PROC_BROWSER_TEST_F(TwoClientSearchEnginesSyncTest, AddMultiple) {
|
| ASSERT_TRUE(AllServicesMatch());
|
| }
|
|
|
| +// TCM ID - 9011135.
|
| +IN_PROC_BROWSER_TEST_F(TwoClientSearchEnginesSyncTest, Duplicates) {
|
| + ASSERT_TRUE(SetupSync()) << "SetupSync() failed.";
|
| + ASSERT_TRUE(AllServicesMatch());
|
| +
|
| + // Add two entries with the same Name and URL (but different keywords).
|
| + // Note that we have to change the GUID of the duplicate.
|
| + AddSearchEngine(0, 0);
|
| +
|
| + TemplateURL* dupe = CreateTestTemplateURL(0);
|
| + dupe->set_keyword(ASCIIToUTF16("somethingelse"));
|
| + dupe->set_sync_guid("newguid");
|
| + GetServiceForProfile(0)->Add(dupe);
|
| +
|
| + TemplateURL* verifier_dupe = CreateTestTemplateURL(0);
|
| + verifier_dupe->set_keyword(ASCIIToUTF16("somethingelse"));
|
| + verifier_dupe->set_sync_guid("newguid");
|
| + GetVerifierService()->Add(verifier_dupe);
|
| +
|
| + ASSERT_TRUE(GetClient(0)->AwaitMutualSyncCycleCompletion(GetClient(1)));
|
| + ASSERT_TRUE(AllServicesMatch());
|
| +}
|
| +
|
| // TCM ID - 9004201.
|
| IN_PROC_BROWSER_TEST_F(TwoClientSearchEnginesSyncTest, UpdateKeyword) {
|
| ASSERT_TRUE(SetupSync()) << "SetupSync() failed.";
|
| @@ -65,7 +88,7 @@ IN_PROC_BROWSER_TEST_F(TwoClientSearchEnginesSyncTest, UpdateKeyword) {
|
| ASSERT_TRUE(GetClient(0)->AwaitMutualSyncCycleCompletion(GetClient(1)));
|
| ASSERT_TRUE(AllServicesMatch());
|
|
|
| - EditSearchEngine(0, "test0", "newkeyword", "test0", "http://www.test0.com/");
|
| + EditSearchEngine(0, "test0", "test0", "newkeyword", "http://www.test0.com/");
|
|
|
| ASSERT_TRUE(GetClient(0)->AwaitMutualSyncCycleCompletion(GetClient(1)));
|
| ASSERT_TRUE(AllServicesMatch());
|
| @@ -89,6 +112,23 @@ IN_PROC_BROWSER_TEST_F(TwoClientSearchEnginesSyncTest, UpdateUrl) {
|
| ASSERT_TRUE(AllServicesMatch());
|
| }
|
|
|
| +// TCM ID - 8910490.
|
| +IN_PROC_BROWSER_TEST_F(TwoClientSearchEnginesSyncTest, UpdateName) {
|
| + ASSERT_TRUE(SetupSync()) << "SetupSync() failed.";
|
| + ASSERT_TRUE(AllServicesMatch());
|
| +
|
| + AddSearchEngine(0, 0);
|
| +
|
| + ASSERT_TRUE(GetClient(0)->AwaitMutualSyncCycleCompletion(GetClient(1)));
|
| + ASSERT_TRUE(AllServicesMatch());
|
| +
|
| + // Change the short name.
|
| + EditSearchEngine(0, "test0", "New Name", "test0", "http://www.test0.com/");
|
| +
|
| + ASSERT_TRUE(GetClient(0)->AwaitMutualSyncCycleCompletion(GetClient(1)));
|
| + ASSERT_TRUE(AllServicesMatch());
|
| +}
|
| +
|
| // TCM ID - 8898660.
|
| IN_PROC_BROWSER_TEST_F(TwoClientSearchEnginesSyncTest, Delete) {
|
| ASSERT_TRUE(SetupSync()) << "SetupSync() failed.";
|
| @@ -105,6 +145,55 @@ IN_PROC_BROWSER_TEST_F(TwoClientSearchEnginesSyncTest, Delete) {
|
| ASSERT_TRUE(AllServicesMatch());
|
| }
|
|
|
| +// TCM ID - 9004196.
|
| +IN_PROC_BROWSER_TEST_F(TwoClientSearchEnginesSyncTest, ConflictKeyword) {
|
| + ASSERT_TRUE(SetupSync()) << "SetupSync() failed.";
|
| + DisableVerifier();
|
| + ASSERT_TRUE(AllServicesMatch());
|
| +
|
| + // Add a different search engine to each client, but make their keywords
|
| + // conflict.
|
| + AddSearchEngine(0, 0);
|
| + AddSearchEngine(1, 1);
|
| + const TemplateURL* turl = GetServiceForProfile(1)->
|
| + GetTemplateURLForKeyword(ASCIIToUTF16("test1"));
|
| + EXPECT_TRUE(turl);
|
| + GetServiceForProfile(1)->ResetTemplateURL(turl,
|
| + turl->short_name(),
|
| + ASCIIToUTF16("test0"),
|
| + turl->url()->url());
|
| +
|
| + ASSERT_TRUE(AwaitQuiescence());
|
| + ASSERT_TRUE(AllServicesMatch());
|
| +}
|
| +
|
| +// TCM ID - 9004187.
|
| +IN_PROC_BROWSER_TEST_F(TwoClientSearchEnginesSyncTest, MergeMultiple) {
|
| + ASSERT_TRUE(SetupSync()) << "SetupSync() failed.";
|
| + DisableVerifier();
|
| + ASSERT_TRUE(AllServicesMatch());
|
| +
|
| + // Set up some different search engines on each client, with some interesting
|
| + // conflicts.
|
| + // client0: { SE0, SE1, SE2 }
|
| + for (int i = 0; i < 3; ++i) {
|
| + AddSearchEngine(0, i);
|
| + }
|
| +
|
| + // client1: { SE0, SE2, SE3, SE0 + different URL }
|
| + AddSearchEngine(1, 0);
|
| + AddSearchEngine(1, 2);
|
| + AddSearchEngine(1, 3);
|
| + TemplateURL* turl = CreateTestTemplateURL(0);
|
| + turl->SetURL("http://www.somethingelse.com/", 0, 0);
|
| + turl->set_keyword(ASCIIToUTF16("somethingelse.com"));
|
| + turl->set_sync_guid("somethingelse");
|
| + GetServiceForProfile(1)->Add(turl);
|
| +
|
| + ASSERT_TRUE(AwaitQuiescence());
|
| + ASSERT_TRUE(AllServicesMatch());
|
| +}
|
| +
|
| // TCM ID - 8906436.
|
| IN_PROC_BROWSER_TEST_F(TwoClientSearchEnginesSyncTest, DisableSync) {
|
| ASSERT_TRUE(SetupSync());
|
|
|