| Index: chrome/browser/prerender/prerender_browsertest.cc
|
| diff --git a/chrome/browser/prerender/prerender_browsertest.cc b/chrome/browser/prerender/prerender_browsertest.cc
|
| index 2d412288ab02b42a4b174cf7d86a89c62d5aebfe..b3d706b26ad62ec3cbb71cfdb6405c8667392666 100644
|
| --- a/chrome/browser/prerender/prerender_browsertest.cc
|
| +++ b/chrome/browser/prerender/prerender_browsertest.cc
|
| @@ -95,6 +95,7 @@ bool ShouldRenderPrerenderedPageCorrectly(FinalStatus status) {
|
| case FINAL_STATUS_RENDERER_CRASHED:
|
| case FINAL_STATUS_CANCELLED:
|
| case FINAL_STATUS_DEVTOOLS_ATTACHED:
|
| + case FINAL_STATUS_SESSION_STORAGE_NAMESPACE_MISMATCH:
|
| return true;
|
| default:
|
| return false;
|
| @@ -107,12 +108,14 @@ class TestPrerenderContents : public PrerenderContents {
|
| TestPrerenderContents(
|
| PrerenderManager* prerender_manager,
|
| PrerenderTracker* prerender_tracker,
|
| + SessionStorageNamespace* session_storage_namespace,
|
| Profile* profile,
|
| const GURL& url,
|
| const GURL& referrer,
|
| int expected_number_of_loads,
|
| FinalStatus expected_final_status)
|
| - : PrerenderContents(prerender_manager, prerender_tracker, profile,
|
| + : PrerenderContents(prerender_manager, prerender_tracker,
|
| + session_storage_namespace, profile,
|
| url, referrer, ORIGIN_LINK_REL_PRERENDER,
|
| PrerenderManager::kNoExperiment),
|
| number_of_loads_(0),
|
| @@ -295,6 +298,7 @@ class WaitForLoadPrerenderContentsFactory : public PrerenderContents::Factory {
|
| virtual PrerenderContents* CreatePrerenderContents(
|
| PrerenderManager* prerender_manager,
|
| PrerenderTracker* prerender_tracker,
|
| + SessionStorageNamespace* session_storage_namespace,
|
| Profile* profile,
|
| const GURL& url,
|
| const GURL& referrer,
|
| @@ -309,6 +313,7 @@ class WaitForLoadPrerenderContentsFactory : public PrerenderContents::Factory {
|
| " with expected final status " << expected_final_status;
|
| VLOG(1) << expected_final_status_queue_.size() << " left in the queue.";
|
| return new TestPrerenderContents(prerender_manager, prerender_tracker,
|
| + session_storage_namespace,
|
| profile, url,
|
| referrer, expected_number_of_loads_,
|
| expected_final_status);
|
| @@ -808,42 +813,6 @@ IN_PROC_BROWSER_TEST_F(PrerenderBrowserTest, PrerenderVisibilityQuickSwitch) {
|
| NavigateToDestURL();
|
| }
|
|
|
| -// Checks that the visibility API works when opening a page in a new hidden
|
| -// tab.
|
| -IN_PROC_BROWSER_TEST_F(PrerenderBrowserTest, PrerenderVisibilityBackgroundTab) {
|
| - PrerenderTestURL("files/prerender/prerender_visibility_hidden.html",
|
| - FINAL_STATUS_USED,
|
| - 1);
|
| - NavigateToDestURLWithDisposition(NEW_BACKGROUND_TAB);
|
| -}
|
| -
|
| -// Checks that the visibility API works when opening a page in a new hidden
|
| -// tab, which is switched to before it stops loading.
|
| -IN_PROC_BROWSER_TEST_F(PrerenderBrowserTest,
|
| - PrerenderVisibilityBackgroundTabQuickSwitch) {
|
| - PrerenderTestURL("files/prerender/prerender_visibility_hidden_quick.html",
|
| - FINAL_STATUS_USED, 0);
|
| - NavigateToDestURLWithDisposition(NEW_BACKGROUND_TAB);
|
| -}
|
| -
|
| -// Checks that the visibility API works when opening a page in a new foreground
|
| -// tab.
|
| -IN_PROC_BROWSER_TEST_F(PrerenderBrowserTest, PrerenderVisibilityForegroundTab) {
|
| - PrerenderTestURL("files/prerender/prerender_visibility.html",
|
| - FINAL_STATUS_USED,
|
| - 1);
|
| - NavigateToDestURLWithDisposition(NEW_FOREGROUND_TAB);
|
| -}
|
| -
|
| -// Checks that the visibility API works when the prerender is quickly opened
|
| -// in a new tab foreground before it stops loading.
|
| -IN_PROC_BROWSER_TEST_F(PrerenderBrowserTest,
|
| - PrerenderVisibilityForegroundTabQuickSwitch) {
|
| - PrerenderTestURL("files/prerender/prerender_visibility_quick.html",
|
| - FINAL_STATUS_USED, 0);
|
| - NavigateToDestURL();
|
| -}
|
| -
|
| // Checks that the prerendering of a page is canceled correctly when a
|
| // Javascript alert is called.
|
| IN_PROC_BROWSER_TEST_F(PrerenderBrowserTest, PrerenderAlertBeforeOnload) {
|
| @@ -1548,31 +1517,6 @@ IN_PROC_BROWSER_TEST_F(PrerenderBrowserTest,
|
| OpenDestURLViaClickTarget();
|
| }
|
|
|
| -// Checks that if a page is opened in a new window by javascript and both the
|
| -// pages are in different domains, the prerendered page is used.
|
| -IN_PROC_BROWSER_TEST_F(PrerenderBrowserTest,
|
| - PrerenderCrossDomainWindowOpenerWindowOpen) {
|
| - PrerenderTestURL(
|
| - GetCrossDomainTestUrl("files/prerender/prerender_page.html"),
|
| - FINAL_STATUS_USED,
|
| - 1);
|
| - OpenDestURLViaWindowOpen();
|
| -}
|
| -
|
| -// Checks that if a page is opened due to click on a href with target="_blank"
|
| -// and both pages are in different domains, the prerendered page is used.
|
| -IN_PROC_BROWSER_TEST_F(PrerenderBrowserTest,
|
| - PrerenderCrossDomainWindowOpenerClickTarget) {
|
| - PrerenderTestURL(
|
| - GetCrossDomainTestUrl("files/prerender/prerender_page.html"),
|
| - FINAL_STATUS_USED,
|
| - 1);
|
| - OpenDestURLViaClickTarget();
|
| -}
|
| -
|
| -// TODO(shishir): Add a test for the case when the page having the
|
| -// prerendering link already has an opener set.
|
| -
|
| // Checks that a top-level page which would normally request an SSL client
|
| // certificate will never be seen since it's an https top-level resource.
|
| IN_PROC_BROWSER_TEST_F(PrerenderBrowserTest, PrerenderSSLClientCertTopLevel) {
|
| @@ -1839,72 +1783,25 @@ IN_PROC_BROWSER_TEST_F(PrerenderBrowserTest, PrerenderClickNavigateGoBack) {
|
| GoBackToPrerender(browser());
|
| }
|
|
|
| -IN_PROC_BROWSER_TEST_F(PrerenderBrowserTest,
|
| - PrerenderClickNewWindowClickGoBack) {
|
| - PrerenderTestURL("files/prerender/prerender_page_with_link.html",
|
| - FINAL_STATUS_USED,
|
| - 1);
|
| - OpenDestURLViaClickNewWindow();
|
| - Browser* new_browser = BrowserList::GetLastActive();
|
| - NavigateToNextPageAfterPrerender(new_browser);
|
| - GoBackToPrerender(new_browser);
|
| -}
|
| -
|
| -IN_PROC_BROWSER_TEST_F(PrerenderBrowserTest,
|
| - PrerenderClickNewWindowNavigateGoBack) {
|
| +IN_PROC_BROWSER_TEST_F(PrerenderBrowserTest, PrerenderClickNewWindow) {
|
| PrerenderTestURL("files/prerender/prerender_page_with_link.html",
|
| - FINAL_STATUS_USED,
|
| + FINAL_STATUS_SESSION_STORAGE_NAMESPACE_MISMATCH,
|
| 1);
|
| OpenDestURLViaClickNewWindow();
|
| - Browser* new_browser = BrowserList::GetLastActive();
|
| - ClickToNextPageAfterPrerender(new_browser);
|
| - GoBackToPrerender(new_browser);
|
| -}
|
| -
|
| -IN_PROC_BROWSER_TEST_F(PrerenderBrowserTest,
|
| - PrerenderClickNewForegroundTabClickGoBack) {
|
| - PrerenderTestURL("files/prerender/prerender_page_with_link.html",
|
| - FINAL_STATUS_USED,
|
| - 1);
|
| - OpenDestURLViaClickNewForegroundTab();
|
| - NavigateToNextPageAfterPrerender(browser());
|
| - GoBackToPrerender(browser());
|
| }
|
|
|
| -IN_PROC_BROWSER_TEST_F(PrerenderBrowserTest,
|
| - PrerenderClickNewForegroundTabNavigateGoBack) {
|
| +IN_PROC_BROWSER_TEST_F(PrerenderBrowserTest, PrerenderClickNewForegroundTab) {
|
| PrerenderTestURL("files/prerender/prerender_page_with_link.html",
|
| - FINAL_STATUS_USED,
|
| + FINAL_STATUS_SESSION_STORAGE_NAMESPACE_MISMATCH,
|
| 1);
|
| OpenDestURLViaClickNewForegroundTab();
|
| - ClickToNextPageAfterPrerender(browser());
|
| - GoBackToPrerender(browser());
|
| }
|
|
|
| -IN_PROC_BROWSER_TEST_F(PrerenderBrowserTest,
|
| - PrerenderClickNewBackgroundTabClickGoBack) {
|
| +IN_PROC_BROWSER_TEST_F(PrerenderBrowserTest, PrerenderClickNewBackgroundTab) {
|
| PrerenderTestURL("files/prerender/prerender_page_with_link.html",
|
| - FINAL_STATUS_USED,
|
| + FINAL_STATUS_SESSION_STORAGE_NAMESPACE_MISMATCH,
|
| 1);
|
| OpenDestURLViaClickNewBackgroundTab();
|
| - // SelectNextTab completes synchronously, in terms of
|
| - // updating the active index.
|
| - browser()->SelectNextTab();
|
| - NavigateToNextPageAfterPrerender(browser());
|
| - GoBackToPrerender(browser());
|
| -}
|
| -
|
| -IN_PROC_BROWSER_TEST_F(PrerenderBrowserTest,
|
| - PrerenderClickNewBackgroundTabNavigateGoBack) {
|
| - PrerenderTestURL("files/prerender/prerender_page_with_link.html",
|
| - FINAL_STATUS_USED,
|
| - 1);
|
| - OpenDestURLViaClickNewBackgroundTab();
|
| - // SelectNextTab completes synchronously, in terms of
|
| - // updating the active index.
|
| - browser()->SelectNextTab();
|
| - ClickToNextPageAfterPrerender(browser());
|
| - GoBackToPrerender(browser());
|
| }
|
|
|
| IN_PROC_BROWSER_TEST_F(PrerenderBrowserTest,
|
|
|