| Index: chrome/browser/sync/test/integration/two_client_bookmarks_sync_test.cc
|
| diff --git a/chrome/browser/sync/test/integration/two_client_bookmarks_sync_test.cc b/chrome/browser/sync/test/integration/two_client_bookmarks_sync_test.cc
|
| index 1f3c197349d9cf9d901e25d9cb617a506907d347..ca45a0161ec7f55f14cb71bb8b1d866c07aa1c60 100644
|
| --- a/chrome/browser/sync/test/integration/two_client_bookmarks_sync_test.cc
|
| +++ b/chrome/browser/sync/test/integration/two_client_bookmarks_sync_test.cc
|
| @@ -53,10 +53,6 @@ class TwoClientBookmarksSyncTest : public SyncTest {
|
| DISALLOW_COPY_AND_ASSIGN(TwoClientBookmarksSyncTest);
|
| };
|
|
|
| -const std::vector<unsigned char> GenericFavicon() {
|
| - return CreateFavicon(254);
|
| -}
|
| -
|
| IN_PROC_BROWSER_TEST_F(TwoClientBookmarksSyncTest, Sanity) {
|
| ASSERT_TRUE(SetupSync()) << "SetupSync() failed.";
|
| ASSERT_TRUE(AllModelsMatchVerifier());
|
| @@ -142,10 +138,52 @@ IN_PROC_BROWSER_TEST_F(TwoClientBookmarksSyncTest, SC_AddFirstBMWithFavicon) {
|
| ASSERT_TRUE(SetupSync()) << "SetupSync() failed.";
|
| ASSERT_TRUE(AllModelsMatchVerifier());
|
|
|
| - const BookmarkNode* bookmark = AddURL(0, kGenericURLTitle, GURL(kGenericURL));
|
| + const GURL page_url(kGenericURL);
|
| + const GURL icon_url("http://www.google.com/favicon.ico");
|
| +
|
| + const BookmarkNode* bookmark = AddURL(0, kGenericURLTitle, page_url);
|
| +
|
| ASSERT_TRUE(bookmark != NULL);
|
| ASSERT_TRUE(GetClient(0)->AwaitMutualSyncCycleCompletion(GetClient(1)));
|
| - SetFavicon(0, bookmark, GenericFavicon());
|
| + SetFavicon(0, bookmark, icon_url, CreateFavicon(SK_ColorWHITE));
|
| + ASSERT_TRUE(GetClient(0)->AwaitMutualSyncCycleCompletion(GetClient(1)));
|
| + ASSERT_TRUE(AllModelsMatchVerifier());
|
| +}
|
| +
|
| +// Test that the history service logic for not losing the hidpi versions of
|
| +// favicons as a result of sync does not result in dropping sync updates.
|
| +// In particular, the synced 16x16 favicon bitmap should overwrite 16x16
|
| +// favicon bitmaps on all clients. (Though non-16x16 favicon bitmaps
|
| +// are unchanged).
|
| +IN_PROC_BROWSER_TEST_F(TwoClientBookmarksSyncTest, SC_SetFaviconHiDPI) {
|
| + // Set the supported scale factors to include 2x such that CreateFavicon()
|
| + // creates a favicon with hidpi representations and that methods in the
|
| + // FaviconService request hidpi favicons.
|
| + std::vector<ui::ScaleFactor> supported_scale_factors;
|
| + supported_scale_factors.push_back(ui::SCALE_FACTOR_100P);
|
| + supported_scale_factors.push_back(ui::SCALE_FACTOR_200P);
|
| + ui::test::SetSupportedScaleFactors(supported_scale_factors);
|
| +
|
| + const GURL page_url(kGenericURL);
|
| + const GURL icon_url1("http://www.google.com/favicon1.ico");
|
| + const GURL icon_url2("http://www.google.com/favicon2.ico");
|
| +
|
| + ASSERT_TRUE(SetupSync()) << "SetupSync() failed.";
|
| + ASSERT_TRUE(AllModelsMatchVerifier());
|
| +
|
| + const BookmarkNode* bookmark0 = AddURL(0, kGenericURLTitle, page_url);
|
| + ASSERT_TRUE(bookmark0 != NULL);
|
| + ASSERT_TRUE(GetClient(0)->AwaitMutualSyncCycleCompletion(GetClient(1)));
|
| + SetFavicon(0, bookmark0, icon_url1, CreateFavicon(SK_ColorWHITE));
|
| + ASSERT_TRUE(GetClient(0)->AwaitMutualSyncCycleCompletion(GetClient(1)));
|
| + ASSERT_TRUE(AllModelsMatchVerifier());
|
| +
|
| + const BookmarkNode* bookmark1 = GetUniqueNodeByURL(1, page_url);
|
| + SetFavicon(1, bookmark1, icon_url1, CreateFavicon(SK_ColorBLUE));
|
| + ASSERT_TRUE(GetClient(1)->AwaitMutualSyncCycleCompletion(GetClient(0)));
|
| + ASSERT_TRUE(AllModelsMatchVerifier());
|
| +
|
| + SetFavicon(0, bookmark0, icon_url2, CreateFavicon(SK_ColorGREEN));
|
| ASSERT_TRUE(GetClient(0)->AwaitMutualSyncCycleCompletion(GetClient(1)));
|
| ASSERT_TRUE(AllModelsMatchVerifier());
|
| }
|
|
|