Index: chrome/browser/page_load_metrics/page_load_metrics_browsertest.cc |
diff --git a/chrome/browser/page_load_metrics/page_load_metrics_browsertest.cc b/chrome/browser/page_load_metrics/page_load_metrics_browsertest.cc |
index 6077b6a2abcbb8bbb72cb6d448b736bac50c8b94..b3d4815415ba3f7c3e4e0bc77e334526d37150f2 100644 |
--- a/chrome/browser/page_load_metrics/page_load_metrics_browsertest.cc |
+++ b/chrome/browser/page_load_metrics/page_load_metrics_browsertest.cc |
@@ -38,6 +38,10 @@ class PageLoadMetricsBrowserTest : public InProcessBrowserTest { |
ui_test_utils::NavigateToURL(browser(), GURL(url::kAboutBlankURL)); |
} |
+ bool NoPageLoadMetricsRecorded() { |
+ return histogram_tester_.GetTotalCountsForPrefix("PageLoad.").empty(); |
+ } |
+ |
base::HistogramTester histogram_tester_; |
DISALLOW_COPY_AND_ASSIGN(PageLoadMetricsBrowserTest); |
@@ -58,11 +62,7 @@ void FailAllNetworkTransactions(net::URLRequestContextGetter* getter) { |
IN_PROC_BROWSER_TEST_F(PageLoadMetricsBrowserTest, NoNavigation) { |
ASSERT_TRUE(embedded_test_server()->Start()); |
- |
- histogram_tester_.ExpectTotalCount(internal::kHistogramCommit, 0); |
- histogram_tester_.ExpectTotalCount(internal::kHistogramDomContentLoaded, 0); |
- histogram_tester_.ExpectTotalCount(internal::kHistogramLoad, 0); |
- histogram_tester_.ExpectTotalCount(internal::kHistogramFirstLayout, 0); |
+ EXPECT_TRUE(NoPageLoadMetricsRecorded()); |
} |
IN_PROC_BROWSER_TEST_F(PageLoadMetricsBrowserTest, NewPage) { |
@@ -80,6 +80,10 @@ IN_PROC_BROWSER_TEST_F(PageLoadMetricsBrowserTest, NewPage) { |
internal::kHistogramParseBlockedOnScriptLoad, 1); |
histogram_tester_.ExpectTotalCount( |
internal::kHistogramParseBlockedOnScriptExecution, 1); |
+ |
+ // Verify that NoPageLoadMetricsRecorded returns false when PageLoad metrics |
+ // have been recorded. |
+ EXPECT_FALSE(NoPageLoadMetricsRecorded()); |
} |
IN_PROC_BROWSER_TEST_F(PageLoadMetricsBrowserTest, SamePageNavigation) { |
@@ -118,10 +122,7 @@ IN_PROC_BROWSER_TEST_F(PageLoadMetricsBrowserTest, NonHtmlMainResource) { |
ui_test_utils::NavigateToURL(browser(), |
embedded_test_server()->GetURL("/circle.svg")); |
NavigateToUntrackedUrl(); |
- |
- histogram_tester_.ExpectTotalCount(internal::kHistogramCommit, 0); |
- histogram_tester_.ExpectTotalCount(page_load_metrics::internal::kErrorEvents, |
- 0); |
+ EXPECT_TRUE(NoPageLoadMetricsRecorded()); |
} |
IN_PROC_BROWSER_TEST_F(PageLoadMetricsBrowserTest, NonHttpOrHttpsUrl) { |
@@ -129,10 +130,7 @@ IN_PROC_BROWSER_TEST_F(PageLoadMetricsBrowserTest, NonHttpOrHttpsUrl) { |
ui_test_utils::NavigateToURL(browser(), GURL(chrome::kChromeUIVersionURL)); |
NavigateToUntrackedUrl(); |
- |
- histogram_tester_.ExpectTotalCount(internal::kHistogramCommit, 0); |
- histogram_tester_.ExpectTotalCount(page_load_metrics::internal::kErrorEvents, |
- 0); |
+ EXPECT_TRUE(NoPageLoadMetricsRecorded()); |
} |
IN_PROC_BROWSER_TEST_F(PageLoadMetricsBrowserTest, HttpErrorPage) { |
@@ -141,10 +139,7 @@ IN_PROC_BROWSER_TEST_F(PageLoadMetricsBrowserTest, HttpErrorPage) { |
ui_test_utils::NavigateToURL( |
browser(), embedded_test_server()->GetURL("/page_load_metrics/404.html")); |
NavigateToUntrackedUrl(); |
- |
- histogram_tester_.ExpectTotalCount(internal::kHistogramCommit, 0); |
- histogram_tester_.ExpectTotalCount(page_load_metrics::internal::kErrorEvents, |
- 0); |
+ EXPECT_TRUE(NoPageLoadMetricsRecorded()); |
} |
IN_PROC_BROWSER_TEST_F(PageLoadMetricsBrowserTest, ChromeErrorPage) { |
@@ -162,10 +157,25 @@ IN_PROC_BROWSER_TEST_F(PageLoadMetricsBrowserTest, ChromeErrorPage) { |
ui_test_utils::NavigateToURL(browser(), |
embedded_test_server()->GetURL("/title1.html")); |
NavigateToUntrackedUrl(); |
+ EXPECT_TRUE(NoPageLoadMetricsRecorded()); |
+} |
- histogram_tester_.ExpectTotalCount(internal::kHistogramCommit, 0); |
- histogram_tester_.ExpectTotalCount(page_load_metrics::internal::kErrorEvents, |
- 0); |
+IN_PROC_BROWSER_TEST_F(PageLoadMetricsBrowserTest, Ignore204Pages) { |
+ ASSERT_TRUE(embedded_test_server()->Start()); |
+ |
+ ui_test_utils::NavigateToURL(browser(), |
+ embedded_test_server()->GetURL("/page204.html")); |
+ NavigateToUntrackedUrl(); |
+ EXPECT_TRUE(NoPageLoadMetricsRecorded()); |
+} |
+ |
+IN_PROC_BROWSER_TEST_F(PageLoadMetricsBrowserTest, IgnoreDownloads) { |
+ ASSERT_TRUE(embedded_test_server()->Start()); |
+ |
+ ui_test_utils::NavigateToURL( |
+ browser(), embedded_test_server()->GetURL("/download-test3.gif")); |
+ NavigateToUntrackedUrl(); |
+ EXPECT_TRUE(NoPageLoadMetricsRecorded()); |
} |
IN_PROC_BROWSER_TEST_F(PageLoadMetricsBrowserTest, PreloadDocumentWrite) { |