| Index: chrome/browser/page_load_metrics/observers/from_gws_page_load_metrics_observer_unittest.cc
|
| diff --git a/chrome/browser/page_load_metrics/observers/from_gws_page_load_metrics_observer_unittest.cc b/chrome/browser/page_load_metrics/observers/from_gws_page_load_metrics_observer_unittest.cc
|
| index 5ddd18f5789ba7e79b3ce2bba545119e7b9b277a..299b3ae3b8963b9772383084076b886cc34ec4e8 100644
|
| --- a/chrome/browser/page_load_metrics/observers/from_gws_page_load_metrics_observer_unittest.cc
|
| +++ b/chrome/browser/page_load_metrics/observers/from_gws_page_load_metrics_observer_unittest.cc
|
| @@ -33,7 +33,7 @@ class FromGWSPageLoadMetricsObserverTest
|
| void SimulateTimingWithFirstPaint() {
|
| page_load_metrics::PageLoadTiming timing;
|
| timing.navigation_start = base::Time::FromDoubleT(1);
|
| - timing.first_paint = base::TimeDelta::FromMilliseconds(0);
|
| + timing.paint_timing.first_paint = base::TimeDelta::FromMilliseconds(0);
|
| PopulateRequiredTimingFields(&timing);
|
| SimulateTimingUpdate(timing);
|
| }
|
| @@ -59,7 +59,7 @@ TEST_F(FromGWSPageLoadMetricsObserverTest, NoMetrics) {
|
| TEST_F(FromGWSPageLoadMetricsObserverTest, NoPreviousCommittedUrl) {
|
| page_load_metrics::PageLoadTiming timing;
|
| timing.navigation_start = base::Time::FromDoubleT(1);
|
| - timing.first_text_paint = base::TimeDelta::FromMilliseconds(1);
|
| + timing.paint_timing.first_text_paint = base::TimeDelta::FromMilliseconds(1);
|
| PopulateRequiredTimingFields(&timing);
|
| NavigateAndCommit(GURL(kExampleUrl));
|
|
|
| @@ -74,7 +74,7 @@ TEST_F(FromGWSPageLoadMetricsObserverTest, NoPreviousCommittedUrl) {
|
| TEST_F(FromGWSPageLoadMetricsObserverTest, NonSearchPreviousCommittedUrl) {
|
| page_load_metrics::PageLoadTiming timing;
|
| timing.navigation_start = base::Time::FromDoubleT(1);
|
| - timing.first_text_paint = base::TimeDelta::FromMilliseconds(1);
|
| + timing.paint_timing.first_text_paint = base::TimeDelta::FromMilliseconds(1);
|
| PopulateRequiredTimingFields(&timing);
|
| NavigateAndCommit(GURL("http://www.other.com"));
|
| NavigateAndCommit(GURL(kExampleUrl));
|
| @@ -91,7 +91,7 @@ TEST_F(FromGWSPageLoadMetricsObserverTest,
|
| GoogleNonSearchPreviousCommittedUrl1) {
|
| page_load_metrics::PageLoadTiming timing;
|
| timing.navigation_start = base::Time::FromDoubleT(1);
|
| - timing.first_text_paint = base::TimeDelta::FromMilliseconds(1);
|
| + timing.paint_timing.first_text_paint = base::TimeDelta::FromMilliseconds(1);
|
| PopulateRequiredTimingFields(&timing);
|
| NavigateAndCommit(GURL("https://www.google.com/"));
|
| NavigateAndCommit(GURL(kExampleUrl));
|
| @@ -108,7 +108,7 @@ TEST_F(FromGWSPageLoadMetricsObserverTest,
|
| GoogleNonSearchPreviousCommittedUrl2) {
|
| page_load_metrics::PageLoadTiming timing;
|
| timing.navigation_start = base::Time::FromDoubleT(1);
|
| - timing.first_text_paint = base::TimeDelta::FromMilliseconds(1);
|
| + timing.paint_timing.first_text_paint = base::TimeDelta::FromMilliseconds(1);
|
| PopulateRequiredTimingFields(&timing);
|
| // Navigation from /search, but missing a query string, so can't have been a
|
| // search results page.
|
| @@ -126,15 +126,18 @@ TEST_F(FromGWSPageLoadMetricsObserverTest,
|
| TEST_F(FromGWSPageLoadMetricsObserverTest, SearchPreviousCommittedUrl1) {
|
| page_load_metrics::PageLoadTiming timing;
|
| timing.navigation_start = base::Time::FromDoubleT(1);
|
| - timing.parse_start = base::TimeDelta::FromMilliseconds(10);
|
| - timing.first_paint = base::TimeDelta::FromMilliseconds(20);
|
| - timing.first_contentful_paint = base::TimeDelta::FromMilliseconds(40);
|
| - timing.first_text_paint = base::TimeDelta::FromMilliseconds(80);
|
| - timing.first_image_paint = base::TimeDelta::FromMilliseconds(160);
|
| - timing.parse_stop = base::TimeDelta::FromMilliseconds(320);
|
| - timing.dom_content_loaded_event_start =
|
| + timing.parse_timing.parse_start = base::TimeDelta::FromMilliseconds(10);
|
| + timing.paint_timing.first_paint = base::TimeDelta::FromMilliseconds(20);
|
| + timing.paint_timing.first_contentful_paint =
|
| + base::TimeDelta::FromMilliseconds(40);
|
| + timing.paint_timing.first_text_paint = base::TimeDelta::FromMilliseconds(80);
|
| + timing.paint_timing.first_image_paint =
|
| + base::TimeDelta::FromMilliseconds(160);
|
| + timing.parse_timing.parse_stop = base::TimeDelta::FromMilliseconds(320);
|
| + timing.document_timing.dom_content_loaded_event_start =
|
| base::TimeDelta::FromMilliseconds(640);
|
| - timing.load_event_start = base::TimeDelta::FromMilliseconds(1280);
|
| + timing.document_timing.load_event_start =
|
| + base::TimeDelta::FromMilliseconds(1280);
|
| PopulateRequiredTimingFields(&timing);
|
| NavigateAndCommit(GURL("https://www.google.com/webhp?q=test"));
|
| NavigateAndCommit(GURL(kExampleUrl));
|
| @@ -147,24 +150,25 @@ TEST_F(FromGWSPageLoadMetricsObserverTest, SearchPreviousCommittedUrl1) {
|
| histogram_tester().ExpectTotalCount(internal::kHistogramFromGWSParseStart, 1);
|
| histogram_tester().ExpectBucketCount(
|
| internal::kHistogramFromGWSParseStart,
|
| - timing.parse_start.value().InMilliseconds(), 1);
|
| + timing.parse_timing.parse_start.value().InMilliseconds(), 1);
|
|
|
| histogram_tester().ExpectTotalCount(internal::kHistogramFromGWSFirstPaint, 1);
|
| histogram_tester().ExpectBucketCount(
|
| internal::kHistogramFromGWSFirstPaint,
|
| - timing.first_paint.value().InMilliseconds(), 1);
|
| + timing.paint_timing.first_paint.value().InMilliseconds(), 1);
|
|
|
| histogram_tester().ExpectTotalCount(
|
| internal::kHistogramFromGWSFirstContentfulPaint, 1);
|
| histogram_tester().ExpectBucketCount(
|
| internal::kHistogramFromGWSFirstContentfulPaint,
|
| - timing.first_contentful_paint.value().InMilliseconds(), 1);
|
| + timing.paint_timing.first_contentful_paint.value().InMilliseconds(), 1);
|
|
|
| histogram_tester().ExpectTotalCount(
|
| internal::kHistogramFromGWSParseStartToFirstContentfulPaint, 1);
|
| histogram_tester().ExpectBucketCount(
|
| internal::kHistogramFromGWSParseStartToFirstContentfulPaint,
|
| - (timing.first_contentful_paint.value() - timing.parse_start.value())
|
| + (timing.paint_timing.first_contentful_paint.value() -
|
| + timing.parse_timing.parse_start.value())
|
| .InMilliseconds(),
|
| 1);
|
|
|
| @@ -172,37 +176,40 @@ TEST_F(FromGWSPageLoadMetricsObserverTest, SearchPreviousCommittedUrl1) {
|
| 1);
|
| histogram_tester().ExpectBucketCount(
|
| internal::kHistogramFromGWSFirstTextPaint,
|
| - timing.first_text_paint.value().InMilliseconds(), 1);
|
| + timing.paint_timing.first_text_paint.value().InMilliseconds(), 1);
|
|
|
| histogram_tester().ExpectTotalCount(
|
| internal::kHistogramFromGWSFirstImagePaint, 1);
|
| histogram_tester().ExpectBucketCount(
|
| internal::kHistogramFromGWSFirstImagePaint,
|
| - timing.first_image_paint.value().InMilliseconds(), 1);
|
| + timing.paint_timing.first_image_paint.value().InMilliseconds(), 1);
|
|
|
| histogram_tester().ExpectTotalCount(internal::kHistogramFromGWSParseDuration,
|
| 1);
|
| - histogram_tester().ExpectBucketCount(
|
| - internal::kHistogramFromGWSParseDuration,
|
| - (timing.parse_stop.value() - timing.parse_start.value()).InMilliseconds(),
|
| - 1);
|
| + histogram_tester().ExpectBucketCount(internal::kHistogramFromGWSParseDuration,
|
| + (timing.parse_timing.parse_stop.value() -
|
| + timing.parse_timing.parse_start.value())
|
| + .InMilliseconds(),
|
| + 1);
|
|
|
| histogram_tester().ExpectTotalCount(
|
| internal::kHistogramFromGWSDomContentLoaded, 1);
|
| histogram_tester().ExpectBucketCount(
|
| internal::kHistogramFromGWSDomContentLoaded,
|
| - timing.dom_content_loaded_event_start.value().InMilliseconds(), 1);
|
| + timing.document_timing.dom_content_loaded_event_start.value()
|
| + .InMilliseconds(),
|
| + 1);
|
|
|
| histogram_tester().ExpectTotalCount(internal::kHistogramFromGWSLoad, 1);
|
| histogram_tester().ExpectBucketCount(
|
| internal::kHistogramFromGWSLoad,
|
| - timing.load_event_start.value().InMilliseconds(), 1);
|
| + timing.document_timing.load_event_start.value().InMilliseconds(), 1);
|
| }
|
|
|
| TEST_F(FromGWSPageLoadMetricsObserverTest, SearchPreviousCommittedUrl2) {
|
| page_load_metrics::PageLoadTiming timing;
|
| timing.navigation_start = base::Time::FromDoubleT(1);
|
| - timing.first_text_paint = base::TimeDelta::FromMilliseconds(1);
|
| + timing.paint_timing.first_text_paint = base::TimeDelta::FromMilliseconds(1);
|
| PopulateRequiredTimingFields(&timing);
|
| NavigateAndCommit(GURL("https://www.google.com/#q=test"));
|
| NavigateAndCommit(GURL(kExampleUrl));
|
| @@ -215,13 +222,13 @@ TEST_F(FromGWSPageLoadMetricsObserverTest, SearchPreviousCommittedUrl2) {
|
| 1);
|
| histogram_tester().ExpectBucketCount(
|
| internal::kHistogramFromGWSFirstTextPaint,
|
| - timing.first_text_paint.value().InMilliseconds(), 1);
|
| + timing.paint_timing.first_text_paint.value().InMilliseconds(), 1);
|
| }
|
|
|
| TEST_F(FromGWSPageLoadMetricsObserverTest, SearchPreviousCommittedUrl3) {
|
| page_load_metrics::PageLoadTiming timing;
|
| timing.navigation_start = base::Time::FromDoubleT(1);
|
| - timing.first_text_paint = base::TimeDelta::FromMilliseconds(1);
|
| + timing.paint_timing.first_text_paint = base::TimeDelta::FromMilliseconds(1);
|
| PopulateRequiredTimingFields(&timing);
|
| NavigateAndCommit(GURL("https://www.google.com/webhp#q=test"));
|
| NavigateAndCommit(GURL(kExampleUrl));
|
| @@ -234,13 +241,13 @@ TEST_F(FromGWSPageLoadMetricsObserverTest, SearchPreviousCommittedUrl3) {
|
| 1);
|
| histogram_tester().ExpectBucketCount(
|
| internal::kHistogramFromGWSFirstTextPaint,
|
| - timing.first_text_paint.value().InMilliseconds(), 1);
|
| + timing.paint_timing.first_text_paint.value().InMilliseconds(), 1);
|
| }
|
|
|
| TEST_F(FromGWSPageLoadMetricsObserverTest, SearchPreviousCommittedUrl4) {
|
| page_load_metrics::PageLoadTiming timing;
|
| timing.navigation_start = base::Time::FromDoubleT(1);
|
| - timing.first_text_paint = base::TimeDelta::FromMilliseconds(1);
|
| + timing.paint_timing.first_text_paint = base::TimeDelta::FromMilliseconds(1);
|
| PopulateRequiredTimingFields(&timing);
|
| NavigateAndCommit(GURL("https://www.google.co.uk/search#q=test"));
|
| NavigateAndCommit(GURL(kExampleUrl));
|
| @@ -253,16 +260,17 @@ TEST_F(FromGWSPageLoadMetricsObserverTest, SearchPreviousCommittedUrl4) {
|
| 1);
|
| histogram_tester().ExpectBucketCount(
|
| internal::kHistogramFromGWSFirstTextPaint,
|
| - timing.first_text_paint.value().InMilliseconds(), 1);
|
| + timing.paint_timing.first_text_paint.value().InMilliseconds(), 1);
|
| }
|
|
|
| TEST_F(FromGWSPageLoadMetricsObserverTest, SearchToNonSearchToOtherPage) {
|
| page_load_metrics::PageLoadTiming timing;
|
| timing.navigation_start = base::Time::FromDoubleT(1);
|
| - timing.first_text_paint = base::TimeDelta::FromMilliseconds(1);
|
| + timing.paint_timing.first_text_paint = base::TimeDelta::FromMilliseconds(1);
|
| page_load_metrics::PageLoadTiming timing2;
|
| timing2.navigation_start = base::Time::FromDoubleT(2);
|
| - timing2.first_text_paint = base::TimeDelta::FromMilliseconds(100);
|
| + timing2.paint_timing.first_text_paint =
|
| + base::TimeDelta::FromMilliseconds(100);
|
| PopulateRequiredTimingFields(&timing);
|
| PopulateRequiredTimingFields(&timing2);
|
| NavigateAndCommit(GURL("https://www.google.co.uk/search#q=test"));
|
| @@ -278,16 +286,17 @@ TEST_F(FromGWSPageLoadMetricsObserverTest, SearchToNonSearchToOtherPage) {
|
| 1);
|
| histogram_tester().ExpectBucketCount(
|
| internal::kHistogramFromGWSFirstTextPaint,
|
| - timing.first_text_paint.value().InMilliseconds(), 1);
|
| + timing.paint_timing.first_text_paint.value().InMilliseconds(), 1);
|
| }
|
|
|
| TEST_F(FromGWSPageLoadMetricsObserverTest, SearchToNonSearchToSearch) {
|
| page_load_metrics::PageLoadTiming timing;
|
| timing.navigation_start = base::Time::FromDoubleT(1);
|
| - timing.first_text_paint = base::TimeDelta::FromMilliseconds(1);
|
| + timing.paint_timing.first_text_paint = base::TimeDelta::FromMilliseconds(1);
|
| page_load_metrics::PageLoadTiming timing2;
|
| timing2.navigation_start = base::Time::FromDoubleT(2);
|
| - timing2.first_text_paint = base::TimeDelta::FromMilliseconds(100);
|
| + timing2.paint_timing.first_text_paint =
|
| + base::TimeDelta::FromMilliseconds(100);
|
| PopulateRequiredTimingFields(&timing);
|
| PopulateRequiredTimingFields(&timing2);
|
| NavigateAndCommit(GURL("https://www.google.co.uk/search#q=test"));
|
| @@ -303,20 +312,22 @@ TEST_F(FromGWSPageLoadMetricsObserverTest, SearchToNonSearchToSearch) {
|
| 1);
|
| histogram_tester().ExpectBucketCount(
|
| internal::kHistogramFromGWSFirstTextPaint,
|
| - timing.first_text_paint.value().InMilliseconds(), 1);
|
| + timing.paint_timing.first_text_paint.value().InMilliseconds(), 1);
|
| }
|
|
|
| TEST_F(FromGWSPageLoadMetricsObserverTest,
|
| SearchToNonSearchToSearchToNonSearch) {
|
| page_load_metrics::PageLoadTiming timing;
|
| timing.navigation_start = base::Time::FromDoubleT(1);
|
| - timing.first_text_paint = base::TimeDelta::FromMilliseconds(1);
|
| + timing.paint_timing.first_text_paint = base::TimeDelta::FromMilliseconds(1);
|
| page_load_metrics::PageLoadTiming timing2;
|
| timing2.navigation_start = base::Time::FromDoubleT(2);
|
| - timing2.first_text_paint = base::TimeDelta::FromMilliseconds(100);
|
| + timing2.paint_timing.first_text_paint =
|
| + base::TimeDelta::FromMilliseconds(100);
|
| page_load_metrics::PageLoadTiming timing3;
|
| timing3.navigation_start = base::Time::FromDoubleT(3);
|
| - timing3.first_text_paint = base::TimeDelta::FromMilliseconds(1000);
|
| + timing3.paint_timing.first_text_paint =
|
| + base::TimeDelta::FromMilliseconds(1000);
|
| PopulateRequiredTimingFields(&timing);
|
| PopulateRequiredTimingFields(&timing2);
|
| PopulateRequiredTimingFields(&timing3);
|
| @@ -335,23 +346,25 @@ TEST_F(FromGWSPageLoadMetricsObserverTest,
|
| 2);
|
| histogram_tester().ExpectBucketCount(
|
| internal::kHistogramFromGWSFirstTextPaint,
|
| - timing.first_text_paint.value().InMilliseconds(), 1);
|
| + timing.paint_timing.first_text_paint.value().InMilliseconds(), 1);
|
| histogram_tester().ExpectBucketCount(
|
| internal::kHistogramFromGWSFirstTextPaint,
|
| - timing3.first_text_paint.value().InMilliseconds(), 1);
|
| + timing3.paint_timing.first_text_paint.value().InMilliseconds(), 1);
|
| }
|
|
|
| TEST_F(FromGWSPageLoadMetricsObserverTest,
|
| SearchToNonSearchToSearchToNonSearchBackgrounded) {
|
| page_load_metrics::PageLoadTiming timing;
|
| timing.navigation_start = base::Time::FromDoubleT(1);
|
| - timing.first_text_paint = base::TimeDelta::FromMilliseconds(1);
|
| + timing.paint_timing.first_text_paint = base::TimeDelta::FromMilliseconds(1);
|
| page_load_metrics::PageLoadTiming timing2;
|
| timing2.navigation_start = base::Time::FromDoubleT(2);
|
| - timing2.first_text_paint = base::TimeDelta::FromMilliseconds(100);
|
| + timing2.paint_timing.first_text_paint =
|
| + base::TimeDelta::FromMilliseconds(100);
|
| page_load_metrics::PageLoadTiming timing3;
|
| timing3.navigation_start = base::Time::FromDoubleT(3);
|
| - timing3.first_text_paint = base::TimeDelta::FromMilliseconds(1000);
|
| + timing3.paint_timing.first_text_paint =
|
| + base::TimeDelta::FromMilliseconds(1000);
|
| PopulateRequiredTimingFields(&timing);
|
| PopulateRequiredTimingFields(&timing2);
|
| PopulateRequiredTimingFields(&timing3);
|
| @@ -371,14 +384,14 @@ TEST_F(FromGWSPageLoadMetricsObserverTest,
|
| 1);
|
| histogram_tester().ExpectBucketCount(
|
| internal::kHistogramFromGWSFirstTextPaint,
|
| - timing.first_text_paint.value().InMilliseconds(), 1);
|
| + timing.paint_timing.first_text_paint.value().InMilliseconds(), 1);
|
| }
|
|
|
| TEST_F(FromGWSPageLoadMetricsObserverTest,
|
| SearchRedirectorPreviousCommittedUrl) {
|
| page_load_metrics::PageLoadTiming timing;
|
| timing.navigation_start = base::Time::FromDoubleT(1);
|
| - timing.first_text_paint = base::TimeDelta::FromMilliseconds(1);
|
| + timing.paint_timing.first_text_paint = base::TimeDelta::FromMilliseconds(1);
|
| PopulateRequiredTimingFields(&timing);
|
| NavigateAndCommit(GURL("https://www.google.com/search#q=test"));
|
| NavigateAndCommit(GURL("https://www.google.com/url?source=web"));
|
| @@ -392,14 +405,14 @@ TEST_F(FromGWSPageLoadMetricsObserverTest,
|
| 1);
|
| histogram_tester().ExpectBucketCount(
|
| internal::kHistogramFromGWSFirstTextPaint,
|
| - timing.first_text_paint.value().InMilliseconds(), 1);
|
| + timing.paint_timing.first_text_paint.value().InMilliseconds(), 1);
|
| }
|
|
|
| TEST_F(FromGWSPageLoadMetricsObserverTest,
|
| NonSearchRedirectorPreviousCommittedUrl) {
|
| page_load_metrics::PageLoadTiming timing;
|
| timing.navigation_start = base::Time::FromDoubleT(1);
|
| - timing.first_text_paint = base::TimeDelta::FromMilliseconds(1);
|
| + timing.paint_timing.first_text_paint = base::TimeDelta::FromMilliseconds(1);
|
| PopulateRequiredTimingFields(&timing);
|
| NavigateAndCommit(GURL("https://www.google.com/webhp?q=test"));
|
| NavigateAndCommit(GURL("https://www.google.com/url?a=b&c=d"));
|
| @@ -417,7 +430,7 @@ TEST_F(FromGWSPageLoadMetricsObserverTest,
|
| SearchPreviousCommittedUrlBackgroundLater) {
|
| page_load_metrics::PageLoadTiming timing;
|
| timing.navigation_start = base::Time::FromDoubleT(1);
|
| - timing.first_text_paint = base::TimeDelta::FromMicroseconds(1);
|
| + timing.paint_timing.first_text_paint = base::TimeDelta::FromMicroseconds(1);
|
| PopulateRequiredTimingFields(&timing);
|
|
|
| NavigateAndCommit(GURL("https://www.google.com/search#q=test"));
|
| @@ -432,12 +445,12 @@ TEST_F(FromGWSPageLoadMetricsObserverTest,
|
| // If the system clock is low resolution PageLoadTracker's background_time_
|
| // may be < timing.first_text_paint.
|
| if (page_load_metrics::WasStartedInForegroundOptionalEventInForeground(
|
| - timing.first_text_paint, info)) {
|
| + timing.paint_timing.first_text_paint, info)) {
|
| histogram_tester().ExpectTotalCount(
|
| internal::kHistogramFromGWSFirstTextPaint, 1);
|
| histogram_tester().ExpectBucketCount(
|
| internal::kHistogramFromGWSFirstTextPaint,
|
| - timing.first_text_paint.value().InMilliseconds(), 1);
|
| + timing.paint_timing.first_text_paint.value().InMilliseconds(), 1);
|
| } else {
|
| histogram_tester().ExpectTotalCount(
|
| internal::kHistogramFromGWSFirstTextPaint, 0);
|
| @@ -600,7 +613,7 @@ TEST_F(FromGWSPageLoadMetricsObserverTest, NoAbortNewNavigationAfterPaint) {
|
| NavigateAndCommit(GURL(kGoogleSearchResultsUrl));
|
| page_load_metrics::PageLoadTiming timing;
|
| timing.navigation_start = base::Time::FromDoubleT(1);
|
| - timing.first_paint = base::TimeDelta::FromMicroseconds(1);
|
| + timing.paint_timing.first_paint = base::TimeDelta::FromMicroseconds(1);
|
| PopulateRequiredTimingFields(&timing);
|
| NavigateAndCommit(GURL("https://example.test"));
|
| SimulateTimingUpdate(timing);
|
|
|