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

Side by Side Diff: chrome/browser/page_load_metrics/page_load_metrics_browsertest.cc

Issue 2396493002: Improve the TestNavigationManager (Closed)
Patch Set: Addressed Nasko's nit Created 4 years, 2 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 | content/browser/frame_host/navigation_controller_impl_browsertest.cc » ('j') | 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) 2015 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2015 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 "base/files/scoped_temp_dir.h" 5 #include "base/files/scoped_temp_dir.h"
6 #include "base/macros.h" 6 #include "base/macros.h"
7 #include "base/test/histogram_tester.h" 7 #include "base/test/histogram_tester.h"
8 #include "base/time/time.h" 8 #include "base/time/time.h"
9 #include "chrome/browser/page_load_metrics/metrics_web_contents_observer.h" 9 #include "chrome/browser/page_load_metrics/metrics_web_contents_observer.h"
10 #include "chrome/browser/page_load_metrics/observers/aborts_page_load_metrics_ob server.h" 10 #include "chrome/browser/page_load_metrics/observers/aborts_page_load_metrics_ob server.h"
(...skipping 318 matching lines...) Expand 10 before | Expand all | Expand 10 after
329 // properly calls NavigationHandle/NavigationThrottle methods. 329 // properly calls NavigationHandle/NavigationThrottle methods.
330 IN_PROC_BROWSER_TEST_F(PageLoadMetricsBrowserTest, AbortNewNavigation) { 330 IN_PROC_BROWSER_TEST_F(PageLoadMetricsBrowserTest, AbortNewNavigation) {
331 ASSERT_TRUE(embedded_test_server()->Start()); 331 ASSERT_TRUE(embedded_test_server()->Start());
332 332
333 GURL url(embedded_test_server()->GetURL("/title1.html")); 333 GURL url(embedded_test_server()->GetURL("/title1.html"));
334 chrome::NavigateParams params(browser(), url, ui::PAGE_TRANSITION_LINK); 334 chrome::NavigateParams params(browser(), url, ui::PAGE_TRANSITION_LINK);
335 content::TestNavigationManager manager( 335 content::TestNavigationManager manager(
336 browser()->tab_strip_model()->GetActiveWebContents(), url); 336 browser()->tab_strip_model()->GetActiveWebContents(), url);
337 337
338 chrome::Navigate(&params); 338 chrome::Navigate(&params);
339 EXPECT_TRUE(manager.WaitForWillStartRequest()); 339 EXPECT_TRUE(manager.WaitForRequestStart());
340 340
341 GURL url2(embedded_test_server()->GetURL("/title2.html")); 341 GURL url2(embedded_test_server()->GetURL("/title2.html"));
342 chrome::NavigateParams params2(browser(), url2, 342 chrome::NavigateParams params2(browser(), url2,
343 ui::PAGE_TRANSITION_FROM_ADDRESS_BAR); 343 ui::PAGE_TRANSITION_FROM_ADDRESS_BAR);
344 content::TestNavigationManager manager2( 344 content::TestNavigationManager manager2(
345 browser()->tab_strip_model()->GetActiveWebContents(), url2); 345 browser()->tab_strip_model()->GetActiveWebContents(), url2);
346 chrome::Navigate(&params2); 346 chrome::Navigate(&params2);
347 347
348 manager2.WaitForNavigationFinished(); 348 manager2.WaitForNavigationFinished();
349 histogram_tester_.ExpectTotalCount( 349 histogram_tester_.ExpectTotalCount(
350 internal::kHistogramAbortNewNavigationBeforeCommit, 1); 350 internal::kHistogramAbortNewNavigationBeforeCommit, 1);
351 } 351 }
352 352
353 IN_PROC_BROWSER_TEST_F(PageLoadMetricsBrowserTest, AbortReload) { 353 IN_PROC_BROWSER_TEST_F(PageLoadMetricsBrowserTest, AbortReload) {
354 ASSERT_TRUE(embedded_test_server()->Start()); 354 ASSERT_TRUE(embedded_test_server()->Start());
355 355
356 GURL url(embedded_test_server()->GetURL("/title1.html")); 356 GURL url(embedded_test_server()->GetURL("/title1.html"));
357 chrome::NavigateParams params(browser(), url, ui::PAGE_TRANSITION_LINK); 357 chrome::NavigateParams params(browser(), url, ui::PAGE_TRANSITION_LINK);
358 content::TestNavigationManager manager( 358 content::TestNavigationManager manager(
359 browser()->tab_strip_model()->GetActiveWebContents(), url); 359 browser()->tab_strip_model()->GetActiveWebContents(), url);
360 360
361 chrome::Navigate(&params); 361 chrome::Navigate(&params);
362 EXPECT_TRUE(manager.WaitForWillStartRequest()); 362 EXPECT_TRUE(manager.WaitForRequestStart());
363 363
364 chrome::NavigateParams params2(browser(), url, ui::PAGE_TRANSITION_RELOAD); 364 chrome::NavigateParams params2(browser(), url, ui::PAGE_TRANSITION_RELOAD);
365 content::TestNavigationManager manager2( 365 content::TestNavigationManager manager2(
366 browser()->tab_strip_model()->GetActiveWebContents(), url); 366 browser()->tab_strip_model()->GetActiveWebContents(), url);
367 chrome::Navigate(&params2); 367 chrome::Navigate(&params2);
368 368
369 manager2.WaitForNavigationFinished(); 369 manager2.WaitForNavigationFinished();
370 histogram_tester_.ExpectTotalCount( 370 histogram_tester_.ExpectTotalCount(
371 internal::kHistogramAbortReloadBeforeCommit, 1); 371 internal::kHistogramAbortReloadBeforeCommit, 1);
372 } 372 }
373 373
374 IN_PROC_BROWSER_TEST_F(PageLoadMetricsBrowserTest, AbortClose) { 374 IN_PROC_BROWSER_TEST_F(PageLoadMetricsBrowserTest, AbortClose) {
375 ASSERT_TRUE(embedded_test_server()->Start()); 375 ASSERT_TRUE(embedded_test_server()->Start());
376 376
377 GURL url(embedded_test_server()->GetURL("/title1.html")); 377 GURL url(embedded_test_server()->GetURL("/title1.html"));
378 chrome::NavigateParams params(browser(), url, ui::PAGE_TRANSITION_LINK); 378 chrome::NavigateParams params(browser(), url, ui::PAGE_TRANSITION_LINK);
379 content::TestNavigationManager manager( 379 content::TestNavigationManager manager(
380 browser()->tab_strip_model()->GetActiveWebContents(), url); 380 browser()->tab_strip_model()->GetActiveWebContents(), url);
381 381
382 chrome::Navigate(&params); 382 chrome::Navigate(&params);
383 EXPECT_TRUE(manager.WaitForWillStartRequest()); 383 EXPECT_TRUE(manager.WaitForRequestStart());
384 384
385 browser()->tab_strip_model()->GetActiveWebContents()->Close(); 385 browser()->tab_strip_model()->GetActiveWebContents()->Close();
386 386
387 manager.WaitForNavigationFinished(); 387 manager.WaitForNavigationFinished();
388 388
389 histogram_tester_.ExpectTotalCount(internal::kHistogramAbortCloseBeforeCommit, 389 histogram_tester_.ExpectTotalCount(internal::kHistogramAbortCloseBeforeCommit,
390 1); 390 1);
391 } 391 }
392 392
393 IN_PROC_BROWSER_TEST_F(PageLoadMetricsBrowserTest, AbortMultiple) { 393 IN_PROC_BROWSER_TEST_F(PageLoadMetricsBrowserTest, AbortMultiple) {
394 ASSERT_TRUE(embedded_test_server()->Start()); 394 ASSERT_TRUE(embedded_test_server()->Start());
395 395
396 GURL url(embedded_test_server()->GetURL("/title1.html")); 396 GURL url(embedded_test_server()->GetURL("/title1.html"));
397 chrome::NavigateParams params(browser(), url, ui::PAGE_TRANSITION_LINK); 397 chrome::NavigateParams params(browser(), url, ui::PAGE_TRANSITION_LINK);
398 content::TestNavigationManager manager( 398 content::TestNavigationManager manager(
399 browser()->tab_strip_model()->GetActiveWebContents(), url); 399 browser()->tab_strip_model()->GetActiveWebContents(), url);
400 400
401 chrome::Navigate(&params); 401 chrome::Navigate(&params);
402 EXPECT_TRUE(manager.WaitForWillStartRequest()); 402 EXPECT_TRUE(manager.WaitForRequestStart());
403 403
404 GURL url2(embedded_test_server()->GetURL("/title2.html")); 404 GURL url2(embedded_test_server()->GetURL("/title2.html"));
405 chrome::NavigateParams params2(browser(), url2, ui::PAGE_TRANSITION_TYPED); 405 chrome::NavigateParams params2(browser(), url2, ui::PAGE_TRANSITION_TYPED);
406 content::TestNavigationManager manager2( 406 content::TestNavigationManager manager2(
407 browser()->tab_strip_model()->GetActiveWebContents(), url2); 407 browser()->tab_strip_model()->GetActiveWebContents(), url2);
408 chrome::Navigate(&params2); 408 chrome::Navigate(&params2);
409 409
410 EXPECT_TRUE(manager2.WaitForWillStartRequest()); 410 EXPECT_TRUE(manager2.WaitForRequestStart());
411 manager.WaitForNavigationFinished(); 411 manager.WaitForNavigationFinished();
412 412
413 GURL url3(embedded_test_server()->GetURL("/title3.html")); 413 GURL url3(embedded_test_server()->GetURL("/title3.html"));
414 chrome::NavigateParams params3(browser(), url3, ui::PAGE_TRANSITION_TYPED); 414 chrome::NavigateParams params3(browser(), url3, ui::PAGE_TRANSITION_TYPED);
415 content::TestNavigationManager manager3( 415 content::TestNavigationManager manager3(
416 browser()->tab_strip_model()->GetActiveWebContents(), url3); 416 browser()->tab_strip_model()->GetActiveWebContents(), url3);
417 chrome::Navigate(&params3); 417 chrome::Navigate(&params3);
418 418
419 EXPECT_TRUE(manager3.WaitForWillStartRequest()); 419 EXPECT_TRUE(manager3.WaitForRequestStart());
420 manager2.WaitForNavigationFinished(); 420 manager2.WaitForNavigationFinished();
421 421
422 manager3.WaitForNavigationFinished(); 422 manager3.WaitForNavigationFinished();
423 423
424 histogram_tester_.ExpectTotalCount( 424 histogram_tester_.ExpectTotalCount(
425 internal::kHistogramAbortNewNavigationBeforeCommit, 2); 425 internal::kHistogramAbortNewNavigationBeforeCommit, 2);
426 } 426 }
427 427
428 IN_PROC_BROWSER_TEST_F(PageLoadMetricsBrowserTest, AbortClientRedirect) { 428 IN_PROC_BROWSER_TEST_F(PageLoadMetricsBrowserTest, AbortClientRedirect) {
429 ASSERT_TRUE(embedded_test_server()->Start()); 429 ASSERT_TRUE(embedded_test_server()->Start());
430 430
431 GURL first_url(embedded_test_server()->GetURL("/title1.html")); 431 GURL first_url(embedded_test_server()->GetURL("/title1.html"));
432 ui_test_utils::NavigateToURL(browser(), first_url); 432 ui_test_utils::NavigateToURL(browser(), first_url);
433 433
434 GURL second_url(embedded_test_server()->GetURL("/title2.html")); 434 GURL second_url(embedded_test_server()->GetURL("/title2.html"));
435 chrome::NavigateParams params(browser(), second_url, 435 chrome::NavigateParams params(browser(), second_url,
436 ui::PAGE_TRANSITION_LINK); 436 ui::PAGE_TRANSITION_LINK);
437 content::TestNavigationManager manager( 437 content::TestNavigationManager manager(
438 browser()->tab_strip_model()->GetActiveWebContents(), second_url); 438 browser()->tab_strip_model()->GetActiveWebContents(), second_url);
439 chrome::Navigate(&params); 439 chrome::Navigate(&params);
440 EXPECT_TRUE(manager.WaitForWillStartRequest()); 440 EXPECT_TRUE(manager.WaitForRequestStart());
441 441
442 { 442 {
443 content::TestNavigationManager reload_manager( 443 content::TestNavigationManager reload_manager(
444 browser()->tab_strip_model()->GetActiveWebContents(), first_url); 444 browser()->tab_strip_model()->GetActiveWebContents(), first_url);
445 EXPECT_TRUE(content::ExecuteScript( 445 EXPECT_TRUE(content::ExecuteScript(
446 browser()->tab_strip_model()->GetActiveWebContents(), 446 browser()->tab_strip_model()->GetActiveWebContents(),
447 "window.location.reload();")); 447 "window.location.reload();"));
448 } 448 }
449 449
450 manager.WaitForNavigationFinished(); 450 manager.WaitForNavigationFinished();
(...skipping 78 matching lines...) Expand 10 before | Expand all | Expand 10 after
529 529
530 histogram_tester_.ExpectTotalCount( 530 histogram_tester_.ExpectTotalCount(
531 prerender::PrerenderHistograms::GetFirstContentfulPaintHistogramName( 531 prerender::PrerenderHistograms::GetFirstContentfulPaintHistogramName(
532 prerender::ORIGIN_NONE, false, true, base::TimeDelta()), 532 prerender::ORIGIN_NONE, false, true, base::TimeDelta()),
533 1); 533 1);
534 histogram_tester_.ExpectTotalCount( 534 histogram_tester_.ExpectTotalCount(
535 prerender::PrerenderHistograms::GetFirstContentfulPaintHistogramName( 535 prerender::PrerenderHistograms::GetFirstContentfulPaintHistogramName(
536 prerender::ORIGIN_NONE, false, false, base::TimeDelta()), 536 prerender::ORIGIN_NONE, false, false, base::TimeDelta()),
537 0); 537 0);
538 } 538 }
OLDNEW
« no previous file with comments | « no previous file | content/browser/frame_host/navigation_controller_impl_browsertest.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698