| Index: chrome/browser/ui/search/instant_extended_interactive_uitest.cc
|
| diff --git a/chrome/browser/ui/search/instant_extended_interactive_uitest.cc b/chrome/browser/ui/search/instant_extended_interactive_uitest.cc
|
| index 5ecefbf3f4c309fa5889775a42e09a041baa2e08..8f34f6207fab71b4817df548a28069af2bf11acc 100644
|
| --- a/chrome/browser/ui/search/instant_extended_interactive_uitest.cc
|
| +++ b/chrome/browser/ui/search/instant_extended_interactive_uitest.cc
|
| @@ -647,33 +647,6 @@ IN_PROC_BROWSER_TEST_F(InstantExtendedTest, DISABLED_MostVisited) {
|
| EXPECT_EQ(most_visited_items_count_, old_most_visited_items_count);
|
| }
|
|
|
| -IN_PROC_BROWSER_TEST_F(InstantPolicyTest, ThemeBackgroundAccess) {
|
| - InstallThemeSource();
|
| - ASSERT_NO_FATAL_FAILURE(InstallThemeAndVerify("theme", "camo theme"));
|
| - ASSERT_NO_FATAL_FAILURE(SetupInstant(browser()));
|
| - FocusOmniboxAndWaitForInstantNTPSupport();
|
| -
|
| - // The "Instant" New Tab should have access to chrome-search: scheme but not
|
| - // chrome: scheme.
|
| - ui_test_utils::NavigateToURLWithDisposition(
|
| - browser(),
|
| - GURL(chrome::kChromeUINewTabURL),
|
| - NEW_FOREGROUND_TAB,
|
| - ui_test_utils::BROWSER_TEST_NONE);
|
| -
|
| - content::RenderViewHost* rvh =
|
| - browser()->tab_strip_model()->GetActiveWebContents()->GetRenderViewHost();
|
| -
|
| - const std::string chrome_url("chrome://theme/IDR_THEME_NTP_BACKGROUND");
|
| - const std::string search_url(
|
| - "chrome-search://theme/IDR_THEME_NTP_BACKGROUND");
|
| - bool loaded = false;
|
| - ASSERT_TRUE(LoadImage(rvh, chrome_url, &loaded));
|
| - EXPECT_FALSE(loaded) << chrome_url;
|
| - ASSERT_TRUE(LoadImage(rvh, search_url, &loaded));
|
| - EXPECT_TRUE(loaded) << search_url;
|
| -}
|
| -
|
| // TODO(dhollowa): Fix flakes. http://crbug.com/179930.
|
| IN_PROC_BROWSER_TEST_F(InstantExtendedTest, DISABLED_FaviconAccess) {
|
| // Create a favicon.
|
| @@ -1388,3 +1361,108 @@ IN_PROC_BROWSER_TEST_F(InstantExtendedTest, NoMostVisitedChangedOnTabSwitch) {
|
| EXPECT_TRUE(UpdateSearchState(active_tab));
|
| EXPECT_EQ(2, on_most_visited_change_calls_);
|
| }
|
| +
|
| +IN_PROC_BROWSER_TEST_F(InstantPolicyTest, ThemeBackgroundAccess) {
|
| + InstallThemeSource();
|
| + ASSERT_NO_FATAL_FAILURE(InstallThemeAndVerify("theme", "camo theme"));
|
| + ASSERT_NO_FATAL_FAILURE(SetupInstant(browser()));
|
| + FocusOmniboxAndWaitForInstantNTPSupport();
|
| +
|
| + // The "Instant" New Tab should have access to chrome-search: scheme but not
|
| + // chrome: scheme.
|
| + ui_test_utils::NavigateToURLWithDisposition(
|
| + browser(),
|
| + GURL(chrome::kChromeUINewTabURL),
|
| + NEW_FOREGROUND_TAB,
|
| + ui_test_utils::BROWSER_TEST_NONE);
|
| +
|
| + content::RenderViewHost* rvh =
|
| + browser()->tab_strip_model()->GetActiveWebContents()->GetRenderViewHost();
|
| +
|
| + const std::string chrome_url("chrome://theme/IDR_THEME_NTP_BACKGROUND");
|
| + const std::string search_url(
|
| + "chrome-search://theme/IDR_THEME_NTP_BACKGROUND");
|
| + bool loaded = false;
|
| + ASSERT_TRUE(LoadImage(rvh, chrome_url, &loaded));
|
| + EXPECT_FALSE(loaded) << chrome_url;
|
| + ASSERT_TRUE(LoadImage(rvh, search_url, &loaded));
|
| + EXPECT_TRUE(loaded) << search_url;
|
| +}
|
| +
|
| +IN_PROC_BROWSER_TEST_F(InstantPolicyTest,
|
| + NoThemeBackgroundChangeEventOnTabSwitch) {
|
| + InstallThemeSource();
|
| + ASSERT_NO_FATAL_FAILURE(SetupInstant(browser()));
|
| + FocusOmniboxAndWaitForInstantNTPSupport();
|
| +
|
| + // Install a theme.
|
| + ASSERT_NO_FATAL_FAILURE(InstallThemeAndVerify("theme", "camo theme"));
|
| + EXPECT_EQ(1, browser()->tab_strip_model()->count());
|
| +
|
| + // Open new tab. Preloaded NTP contents should have been used.
|
| + ui_test_utils::NavigateToURLWithDisposition(
|
| + browser(),
|
| + GURL(chrome::kChromeUINewTabURL),
|
| + NEW_FOREGROUND_TAB,
|
| + ui_test_utils::BROWSER_TEST_NONE);
|
| + EXPECT_EQ(2, browser()->tab_strip_model()->count());
|
| +
|
| + content::WebContents* active_tab =
|
| + browser()->tab_strip_model()->GetActiveWebContents();
|
| + ASSERT_EQ(1, browser()->tab_strip_model()->active_index());
|
| + int on_theme_changed_calls = 0;
|
| + EXPECT_TRUE(GetIntFromJS(active_tab, "onThemeChangedCalls",
|
| + &on_theme_changed_calls));
|
| + EXPECT_EQ(1, on_theme_changed_calls);
|
| +
|
| + // Activate the previous tab.
|
| + browser()->tab_strip_model()->ActivateTabAt(0, false);
|
| + ASSERT_EQ(0, browser()->tab_strip_model()->active_index());
|
| +
|
| + // Switch back to new tab.
|
| + browser()->tab_strip_model()->ActivateTabAt(1, false);
|
| + ASSERT_EQ(1, browser()->tab_strip_model()->active_index());
|
| +
|
| + // Confirm that new tab got no onthemechanged event while switching tabs.
|
| + active_tab = browser()->tab_strip_model()->GetActiveWebContents();
|
| + on_theme_changed_calls = 0;
|
| + EXPECT_TRUE(GetIntFromJS(active_tab, "onThemeChangedCalls",
|
| + &on_theme_changed_calls));
|
| + EXPECT_EQ(1, on_theme_changed_calls);
|
| +}
|
| +
|
| +IN_PROC_BROWSER_TEST_F(InstantPolicyTest,
|
| + SendThemeBackgroundChangedEvent) {
|
| + InstallThemeSource();
|
| + ASSERT_NO_FATAL_FAILURE(SetupInstant(browser()));
|
| + FocusOmniboxAndWaitForInstantNTPSupport();
|
| +
|
| + // Install a theme.
|
| + ASSERT_NO_FATAL_FAILURE(InstallThemeAndVerify("theme", "camo theme"));
|
| +
|
| + // Open new tab. Preloaded NTP contents should have been used.
|
| + ui_test_utils::NavigateToURLWithDisposition(
|
| + browser(),
|
| + GURL(chrome::kChromeUINewTabURL),
|
| + NEW_FOREGROUND_TAB,
|
| + ui_test_utils::BROWSER_TEST_NONE);
|
| + EXPECT_EQ(2, browser()->tab_strip_model()->count());
|
| +
|
| + // Make sure new tab received an onthemechanged event.
|
| + content::WebContents* active_tab =
|
| + browser()->tab_strip_model()->GetActiveWebContents();
|
| + ASSERT_EQ(1, browser()->tab_strip_model()->active_index());
|
| + int on_theme_changed_calls = 0;
|
| + EXPECT_TRUE(GetIntFromJS(active_tab, "onThemeChangedCalls",
|
| + &on_theme_changed_calls));
|
| + EXPECT_EQ(1, on_theme_changed_calls);
|
| +
|
| + // Install a new theme.
|
| + ASSERT_NO_FATAL_FAILURE(InstallThemeAndVerify("theme2", "snowflake theme"));
|
| +
|
| + // Confirm that new tab is notified about the theme changed event.
|
| + on_theme_changed_calls = 0;
|
| + EXPECT_TRUE(GetIntFromJS(active_tab, "onThemeChangedCalls",
|
| + &on_theme_changed_calls));
|
| + EXPECT_EQ(2, on_theme_changed_calls);
|
| +}
|
|
|