OLD | NEW |
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 3276 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
3287 "Prerender.websame_PrefetchTTFCP.Warm.Cacheable.Visible", 1); | 3287 "Prerender.websame_PrefetchTTFCP.Warm.Cacheable.Visible", 1); |
3288 histogram_tester().ExpectUniqueSample( | 3288 histogram_tester().ExpectUniqueSample( |
3289 "Prerender.websame_PrefetchTTFCP.Warm.Cacheable.Visible", 1654, 1); | 3289 "Prerender.websame_PrefetchTTFCP.Warm.Cacheable.Visible", 1654, 1); |
3290 } | 3290 } |
3291 | 3291 |
3292 IN_PROC_BROWSER_TEST_F(PrerenderBrowserTest, FirstContentfulPaintTimingReuse) { | 3292 IN_PROC_BROWSER_TEST_F(PrerenderBrowserTest, FirstContentfulPaintTimingReuse) { |
3293 GetPrerenderManager()->DisablePageLoadMetricsObserverForTesting(); | 3293 GetPrerenderManager()->DisablePageLoadMetricsObserverForTesting(); |
3294 base::SimpleTestTickClock* clock = OverridePrerenderManagerTimeTicks(); | 3294 base::SimpleTestTickClock* clock = OverridePrerenderManagerTimeTicks(); |
3295 | 3295 |
3296 GURL url = embedded_test_server()->GetURL("/prerender/prerender_page.html"); | 3296 GURL url = embedded_test_server()->GetURL("/prerender/prerender_page.html"); |
| 3297 base::RunLoop hanging_request_waiter; |
| 3298 BrowserThread::PostTask(BrowserThread::IO, FROM_HERE, |
| 3299 base::Bind(&CreateHangingFirstRequestInterceptorOnIO, |
| 3300 url, GetTestPath("prerender_page.html"), |
| 3301 hanging_request_waiter.QuitClosure())); |
3297 // As this load will be canceled, it is not waited for, and hence no | 3302 // As this load will be canceled, it is not waited for, and hence no |
3298 // javascript is executed. | 3303 // javascript is executed. |
3299 DisableJavascriptCalls(); | 3304 DisableJavascriptCalls(); |
3300 PrerenderTestURL(url, FINAL_STATUS_CANCELLED, 0); | 3305 PrerenderTestURL(url, FINAL_STATUS_CANCELLED, 0); |
| 3306 hanging_request_waiter.Run(); |
3301 | 3307 |
3302 // This prerender cancels and reuses the first. | 3308 // This prerender cancels and reuses the first. |
3303 clock->Advance(base::TimeDelta::FromSeconds(1)); | 3309 clock->Advance(base::TimeDelta::FromSeconds(1)); |
3304 base::TimeTicks load_start = clock->NowTicks(); | 3310 base::TimeTicks load_start = clock->NowTicks(); |
3305 EnableJavascriptCalls(); | 3311 EnableJavascriptCalls(); |
3306 PrerenderTestURL(url, FINAL_STATUS_USED, 1); | 3312 PrerenderTestURL(url, FINAL_STATUS_USED, 1); |
3307 clock->Advance(base::TimeDelta::FromSeconds(1)); | 3313 clock->Advance(base::TimeDelta::FromSeconds(1)); |
3308 | 3314 |
3309 NavigateToDestURL(); | 3315 NavigateToDestURL(); |
3310 PrerenderPageLoadMetricsObserver observer(GetPrerenderManager(), | 3316 PrerenderPageLoadMetricsObserver observer(GetPrerenderManager(), |
(...skipping 440 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
3751 browser()->tab_strip_model()->GetActiveWebContents(); | 3757 browser()->tab_strip_model()->GetActiveWebContents(); |
3752 bool display_test_result = false; | 3758 bool display_test_result = false; |
3753 ASSERT_TRUE(content::ExecuteScriptAndExtractBool(web_contents, | 3759 ASSERT_TRUE(content::ExecuteScriptAndExtractBool(web_contents, |
3754 "DidDisplayReallyPass()", | 3760 "DidDisplayReallyPass()", |
3755 &display_test_result)); | 3761 &display_test_result)); |
3756 ASSERT_TRUE(display_test_result); | 3762 ASSERT_TRUE(display_test_result); |
3757 } | 3763 } |
3758 #endif // !defined(DISABLE_NACL) | 3764 #endif // !defined(DISABLE_NACL) |
3759 | 3765 |
3760 } // namespace prerender | 3766 } // namespace prerender |
OLD | NEW |