Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(76)

Side by Side Diff: chrome/browser/prerender/prerender_browsertest.cc

Issue 2798273003: prerender: disable all browser tests on mac asan (Closed)
Patch Set: Created 3 years, 8 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « no previous file | no next file » | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include <stddef.h> 5 #include <stddef.h>
6 #include <deque> 6 #include <deque>
7 #include <set> 7 #include <set>
8 #include <string> 8 #include <string>
9 #include <unordered_map> 9 #include <unordered_map>
10 #include <utility> 10 #include <utility>
(...skipping 131 matching lines...) Expand 10 before | Expand all | Expand 10 after
142 using content::WebContentsObserver; 142 using content::WebContentsObserver;
143 using net::NetworkChangeNotifier; 143 using net::NetworkChangeNotifier;
144 using prerender::test_utils::RequestCounter; 144 using prerender::test_utils::RequestCounter;
145 using prerender::test_utils::CreateCountingInterceptorOnIO; 145 using prerender::test_utils::CreateCountingInterceptorOnIO;
146 using prerender::test_utils::CreateHangingFirstRequestInterceptorOnIO; 146 using prerender::test_utils::CreateHangingFirstRequestInterceptorOnIO;
147 using prerender::test_utils::CreateMockInterceptorOnIO; 147 using prerender::test_utils::CreateMockInterceptorOnIO;
148 using prerender::test_utils::TestPrerender; 148 using prerender::test_utils::TestPrerender;
149 using prerender::test_utils::TestPrerenderContents; 149 using prerender::test_utils::TestPrerenderContents;
150 using task_manager::browsertest_util::WaitForTaskManagerRows; 150 using task_manager::browsertest_util::WaitForTaskManagerRows;
151 151
152 // crbug.com/708158
153 #if !defined(OS_MACOSX) || !defined(ADDRESS_SANITIZER)
154
152 // Prerender tests work as follows: 155 // Prerender tests work as follows:
153 // 156 //
154 // A page with a prefetch link to the test page is loaded. Once prerendered, 157 // A page with a prefetch link to the test page is loaded. Once prerendered,
155 // its Javascript function DidPrerenderPass() is called, which returns true if 158 // its Javascript function DidPrerenderPass() is called, which returns true if
156 // the page behaves as expected when prerendered. 159 // the page behaves as expected when prerendered.
157 // 160 //
158 // The prerendered page is then displayed on a tab. The Javascript function 161 // The prerendered page is then displayed on a tab. The Javascript function
159 // DidDisplayPass() is called, and returns true if the page behaved as it 162 // DidDisplayPass() is called, and returns true if the page behaved as it
160 // should while being displayed. 163 // should while being displayed.
161 164
(...skipping 1869 matching lines...) Expand 10 before | Expand all | Expand 10 after
2031 2034
2032 ChannelDestructionWatcher channel_close_watcher; 2035 ChannelDestructionWatcher channel_close_watcher;
2033 channel_close_watcher.WatchChannel(browser()->tab_strip_model()-> 2036 channel_close_watcher.WatchChannel(browser()->tab_strip_model()->
2034 GetActiveWebContents()->GetRenderProcessHost()); 2037 GetActiveWebContents()->GetRenderProcessHost());
2035 NavigateToDestURL(); 2038 NavigateToDestURL();
2036 channel_close_watcher.WaitForChannelClose(); 2039 channel_close_watcher.WaitForChannelClose();
2037 2040
2038 ASSERT_TRUE(IsEmptyPrerenderLinkManager()); 2041 ASSERT_TRUE(IsEmptyPrerenderLinkManager());
2039 } 2042 }
2040 2043
2041 // crbug.com/708158
2042 #if defined(OS_MACOSX) && defined(ADDRESS_SANITIZER)
2043 #define MAYBE_PrerenderPageNavigateFragment \
2044 DISABLED_PrerenderPageNavigateFragment
2045 #else
2046 #define MAYBE_PrerenderPageNavigateFragment PrerenderPageNavigateFragment
2047 #endif
2048 // Checks that we do not use a prerendered page when navigating from 2044 // Checks that we do not use a prerendered page when navigating from
2049 // the main page to a fragment. 2045 // the main page to a fragment.
2050 IN_PROC_BROWSER_TEST_F(PrerenderBrowserTest, 2046 IN_PROC_BROWSER_TEST_F(PrerenderBrowserTest, PrerenderPageNavigateFragment) {
2051 MAYBE_PrerenderPageNavigateFragment) {
2052 PrerenderTestURL("/prerender/no_prerender_page.html", 2047 PrerenderTestURL("/prerender/no_prerender_page.html",
2053 FINAL_STATUS_APP_TERMINATING, 1); 2048 FINAL_STATUS_APP_TERMINATING, 1);
2054 NavigateToURLWithDisposition("/prerender/no_prerender_page.html#fragment", 2049 NavigateToURLWithDisposition("/prerender/no_prerender_page.html#fragment",
2055 WindowOpenDisposition::CURRENT_TAB, false); 2050 WindowOpenDisposition::CURRENT_TAB, false);
2056 } 2051 }
2057 2052
2058 // crbug.com/708158
2059 #if defined(OS_MACOSX) && defined(ADDRESS_SANITIZER)
2060 #define MAYBE_PrerenderFragmentNavigatePage \
2061 DISABLED_PrerenderFragmentNavigatePage
2062 #else
2063 #define MAYBE_PrerenderFragmentNavigatePage PrerenderFragmentNavigatePage
2064 #endif
2065 // Checks that we do not use a prerendered page when we prerender a fragment 2053 // Checks that we do not use a prerendered page when we prerender a fragment
2066 // but navigate to the main page. 2054 // but navigate to the main page.
2067 IN_PROC_BROWSER_TEST_F(PrerenderBrowserTest, 2055 IN_PROC_BROWSER_TEST_F(PrerenderBrowserTest, PrerenderFragmentNavigatePage) {
2068 MAYBE_PrerenderFragmentNavigatePage) {
2069 PrerenderTestURL("/prerender/no_prerender_page.html#fragment", 2056 PrerenderTestURL("/prerender/no_prerender_page.html#fragment",
2070 FINAL_STATUS_APP_TERMINATING, 1); 2057 FINAL_STATUS_APP_TERMINATING, 1);
2071 NavigateToURLWithDisposition("/prerender/no_prerender_page.html", 2058 NavigateToURLWithDisposition("/prerender/no_prerender_page.html",
2072 WindowOpenDisposition::CURRENT_TAB, false); 2059 WindowOpenDisposition::CURRENT_TAB, false);
2073 } 2060 }
2074 2061
2075 // crbug.com/708158
2076 #if defined(OS_MACOSX) && defined(ADDRESS_SANITIZER)
2077 #define MAYBE_PrerenderFragmentNavigateFragment \
2078 DISABLED_PrerenderFragmentNavigateFragment
2079 #else
2080 #define MAYBE_PrerenderFragmentNavigateFragment \
2081 PrerenderFragmentNavigateFragment
2082 #endif
2083 // Checks that we do not use a prerendered page when we prerender a fragment 2062 // Checks that we do not use a prerendered page when we prerender a fragment
2084 // but navigate to a different fragment on the same page. 2063 // but navigate to a different fragment on the same page.
2085 IN_PROC_BROWSER_TEST_F(PrerenderBrowserTest, 2064 IN_PROC_BROWSER_TEST_F(PrerenderBrowserTest,
2086 MAYBE_PrerenderFragmentNavigateFragment) { 2065 PrerenderFragmentNavigateFragment) {
2087 PrerenderTestURL("/prerender/no_prerender_page.html#other_fragment", 2066 PrerenderTestURL("/prerender/no_prerender_page.html#other_fragment",
2088 FINAL_STATUS_APP_TERMINATING, 1); 2067 FINAL_STATUS_APP_TERMINATING, 1);
2089 NavigateToURLWithDisposition("/prerender/no_prerender_page.html#fragment", 2068 NavigateToURLWithDisposition("/prerender/no_prerender_page.html#fragment",
2090 WindowOpenDisposition::CURRENT_TAB, false); 2069 WindowOpenDisposition::CURRENT_TAB, false);
2091 } 2070 }
2092 2071
2093 // Checks that we do not use a prerendered page when the page uses a client 2072 // Checks that we do not use a prerendered page when the page uses a client
2094 // redirect to refresh from a fragment on the same page. 2073 // redirect to refresh from a fragment on the same page.
2095 IN_PROC_BROWSER_TEST_F(PrerenderBrowserTest, 2074 IN_PROC_BROWSER_TEST_F(PrerenderBrowserTest,
2096 PrerenderClientRedirectFromFragment) { 2075 PrerenderClientRedirectFromFragment) {
(...skipping 1000 matching lines...) Expand 10 before | Expand all | Expand 10 after
3097 NavigateToDestURL(); 3076 NavigateToDestURL();
3098 } 3077 }
3099 3078
3100 // Checks that deferred redirects in a synchronous XHR abort the prerender. 3079 // Checks that deferred redirects in a synchronous XHR abort the prerender.
3101 IN_PROC_BROWSER_TEST_F(PrerenderBrowserTest, PrerenderDeferredSynchronousXHR) { 3080 IN_PROC_BROWSER_TEST_F(PrerenderBrowserTest, PrerenderDeferredSynchronousXHR) {
3102 PrerenderTestURL("/prerender/prerender_deferred_sync_xhr.html", 3081 PrerenderTestURL("/prerender/prerender_deferred_sync_xhr.html",
3103 FINAL_STATUS_BAD_DEFERRED_REDIRECT, 0); 3082 FINAL_STATUS_BAD_DEFERRED_REDIRECT, 0);
3104 ui_test_utils::NavigateToURL(current_browser(), dest_url()); 3083 ui_test_utils::NavigateToURL(current_browser(), dest_url());
3105 } 3084 }
3106 3085
3107 // crbug.com/708158
3108 #if defined(OS_MACOSX) && defined(ADDRESS_SANITIZER)
3109 #define MAYBE_PrerenderExtraHeadersNoSwap DISABLED_PrerenderExtraHeadersNoSwap
3110 #else
3111 #define MAYBE_PrerenderExtraHeadersNoSwap PrerenderExtraHeadersNoSwap
3112 #endif
3113 // Checks that prerenders are not swapped for navigations with extra headers. 3086 // Checks that prerenders are not swapped for navigations with extra headers.
3114 IN_PROC_BROWSER_TEST_F(PrerenderBrowserTest, 3087 IN_PROC_BROWSER_TEST_F(PrerenderBrowserTest, PrerenderExtraHeadersNoSwap) {
3115 MAYBE_PrerenderExtraHeadersNoSwap) {
3116 PrerenderTestURL("/prerender/prerender_page.html", 3088 PrerenderTestURL("/prerender/prerender_page.html",
3117 FINAL_STATUS_APP_TERMINATING, 1); 3089 FINAL_STATUS_APP_TERMINATING, 1);
3118 3090
3119 content::OpenURLParams params(dest_url(), Referrer(), 3091 content::OpenURLParams params(dest_url(), Referrer(),
3120 WindowOpenDisposition::CURRENT_TAB, 3092 WindowOpenDisposition::CURRENT_TAB,
3121 ui::PAGE_TRANSITION_TYPED, false); 3093 ui::PAGE_TRANSITION_TYPED, false);
3122 params.extra_headers = "X-Custom-Header: 42\r\n"; 3094 params.extra_headers = "X-Custom-Header: 42\r\n";
3123 NavigateToURLWithParams(params, false); 3095 NavigateToURLWithParams(params, false);
3124 } 3096 }
3125 3097
(...skipping 686 matching lines...) Expand 10 before | Expand all | Expand 10 after
3812 WebContents* web_contents = 3784 WebContents* web_contents =
3813 browser()->tab_strip_model()->GetActiveWebContents(); 3785 browser()->tab_strip_model()->GetActiveWebContents();
3814 bool display_test_result = false; 3786 bool display_test_result = false;
3815 ASSERT_TRUE(content::ExecuteScriptAndExtractBool(web_contents, 3787 ASSERT_TRUE(content::ExecuteScriptAndExtractBool(web_contents,
3816 "DidDisplayReallyPass()", 3788 "DidDisplayReallyPass()",
3817 &display_test_result)); 3789 &display_test_result));
3818 ASSERT_TRUE(display_test_result); 3790 ASSERT_TRUE(display_test_result);
3819 } 3791 }
3820 #endif // !defined(DISABLE_NACL) 3792 #endif // !defined(DISABLE_NACL)
3821 3793
3794 #endif // !defined(OS_MACOSX) || !defined(ADDRESS_SANITIZER)
3795
3822 } // namespace prerender 3796 } // namespace prerender
OLDNEW
« no previous file with comments | « no previous file | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698