Index: chrome/browser/page_load_metrics/observers/service_worker_page_load_metrics_observer_unittest.cc |
diff --git a/chrome/browser/page_load_metrics/observers/service_worker_page_load_metrics_observer_unittest.cc b/chrome/browser/page_load_metrics/observers/service_worker_page_load_metrics_observer_unittest.cc |
index 3074e0c3881a8cba655a105d33eeb9d559310454..0de5f1243209204449d5745a79ac45f8599b51b2 100644 |
--- a/chrome/browser/page_load_metrics/observers/service_worker_page_load_metrics_observer_unittest.cc |
+++ b/chrome/browser/page_load_metrics/observers/service_worker_page_load_metrics_observer_unittest.cc |
@@ -85,6 +85,25 @@ class ServiceWorkerPageLoadMetricsObserverTest |
internal::kHistogramServiceWorkerLoadSearch, 0); |
} |
+ void AssertNoSearchNoSWHistogramsLogged() { |
+ histogram_tester().ExpectTotalCount( |
+ internal::kHistogramServiceWorkerFirstContentfulPaintSearchNoSW, 0); |
+ histogram_tester().ExpectTotalCount( |
+ internal:: |
+ kHistogramServiceWorkerParseStartToFirstContentfulPaintSearchNoSW, |
+ 0); |
+ histogram_tester().ExpectTotalCount( |
+ internal::kHistogramServiceWorkerFirstMeaningfulPaintSearchNoSW, 0); |
+ histogram_tester().ExpectTotalCount( |
+ internal:: |
+ kHistogramServiceWorkerParseStartToFirstMeaningfulPaintSearchNoSW, |
+ 0); |
+ histogram_tester().ExpectTotalCount( |
+ internal::kHistogramServiceWorkerDomContentLoadedSearchNoSW, 0); |
+ histogram_tester().ExpectTotalCount( |
+ internal::kHistogramServiceWorkerLoadSearchNoSW, 0); |
+ } |
+ |
void InitializeTestPageLoadTiming( |
page_load_metrics::mojom::PageLoadTiming* timing) { |
page_load_metrics::InitPageLoadTimingForTest(timing); |
@@ -106,6 +125,7 @@ TEST_F(ServiceWorkerPageLoadMetricsObserverTest, NoMetrics) { |
AssertNoServiceWorkerHistogramsLogged(); |
AssertNoInboxHistogramsLogged(); |
AssertNoSearchHistogramsLogged(); |
+ AssertNoSearchNoSWHistogramsLogged(); |
} |
TEST_F(ServiceWorkerPageLoadMetricsObserverTest, NoServiceWorker) { |
@@ -118,6 +138,7 @@ TEST_F(ServiceWorkerPageLoadMetricsObserverTest, NoServiceWorker) { |
AssertNoServiceWorkerHistogramsLogged(); |
AssertNoInboxHistogramsLogged(); |
AssertNoSearchHistogramsLogged(); |
+ AssertNoSearchNoSWHistogramsLogged(); |
} |
TEST_F(ServiceWorkerPageLoadMetricsObserverTest, WithServiceWorker) { |
@@ -166,6 +187,7 @@ TEST_F(ServiceWorkerPageLoadMetricsObserverTest, WithServiceWorker) { |
AssertNoInboxHistogramsLogged(); |
AssertNoSearchHistogramsLogged(); |
+ AssertNoSearchNoSWHistogramsLogged(); |
} |
TEST_F(ServiceWorkerPageLoadMetricsObserverTest, WithServiceWorkerBackground) { |
@@ -210,6 +232,7 @@ TEST_F(ServiceWorkerPageLoadMetricsObserverTest, WithServiceWorkerBackground) { |
AssertNoInboxHistogramsLogged(); |
AssertNoSearchHistogramsLogged(); |
+ AssertNoSearchNoSWHistogramsLogged(); |
} |
TEST_F(ServiceWorkerPageLoadMetricsObserverTest, InboxSite) { |
@@ -311,6 +334,7 @@ TEST_F(ServiceWorkerPageLoadMetricsObserverTest, InboxSite) { |
internal::kHistogramServiceWorkerParseStart, 1); |
AssertNoSearchHistogramsLogged(); |
+ AssertNoSearchNoSWHistogramsLogged(); |
} |
TEST_F(ServiceWorkerPageLoadMetricsObserverTest, SearchSite) { |
@@ -412,4 +436,68 @@ TEST_F(ServiceWorkerPageLoadMetricsObserverTest, SearchSite) { |
internal::kHistogramServiceWorkerParseStart, 1); |
AssertNoInboxHistogramsLogged(); |
+ AssertNoSearchNoSWHistogramsLogged(); |
+} |
+ |
+TEST_F(ServiceWorkerPageLoadMetricsObserverTest, SearchNoSWSite) { |
+ page_load_metrics::mojom::PageLoadTiming timing; |
+ InitializeTestPageLoadTiming(&timing); |
+ |
+ NavigateAndCommit(GURL(kSearchTestUrl)); |
+ page_load_metrics::mojom::PageLoadMetadata metadata; |
+ SimulateTimingAndMetadataUpdate(timing, metadata); |
+ |
+ histogram_tester().ExpectTotalCount( |
+ internal::kHistogramServiceWorkerFirstContentfulPaintSearchNoSW, 1); |
+ histogram_tester().ExpectBucketCount( |
+ internal::kHistogramServiceWorkerFirstContentfulPaintSearchNoSW, |
+ timing.paint_timing->first_contentful_paint.value().InMilliseconds(), 1); |
+ |
+ histogram_tester().ExpectTotalCount( |
+ internal:: |
+ kHistogramServiceWorkerParseStartToFirstContentfulPaintSearchNoSW, |
+ 1); |
+ histogram_tester().ExpectBucketCount( |
+ internal:: |
+ kHistogramServiceWorkerParseStartToFirstContentfulPaintSearchNoSW, |
+ (timing.paint_timing->first_contentful_paint.value() - |
+ timing.parse_timing->parse_start.value()) |
+ .InMilliseconds(), |
+ 1); |
+ |
+ histogram_tester().ExpectTotalCount( |
+ internal::kHistogramServiceWorkerFirstMeaningfulPaintSearchNoSW, 1); |
+ histogram_tester().ExpectBucketCount( |
+ internal::kHistogramServiceWorkerFirstMeaningfulPaintSearchNoSW, |
+ timing.paint_timing->first_meaningful_paint.value().InMilliseconds(), 1); |
+ |
+ histogram_tester().ExpectTotalCount( |
+ internal:: |
+ kHistogramServiceWorkerParseStartToFirstMeaningfulPaintSearchNoSW, |
+ 1); |
+ histogram_tester().ExpectBucketCount( |
+ internal:: |
+ kHistogramServiceWorkerParseStartToFirstMeaningfulPaintSearchNoSW, |
+ (timing.paint_timing->first_meaningful_paint.value() - |
+ timing.parse_timing->parse_start.value()) |
+ .InMilliseconds(), |
+ 1); |
+ |
+ histogram_tester().ExpectTotalCount( |
+ internal::kHistogramServiceWorkerDomContentLoadedSearchNoSW, 1); |
+ histogram_tester().ExpectBucketCount( |
+ internal::kHistogramServiceWorkerDomContentLoadedSearchNoSW, |
+ timing.document_timing->dom_content_loaded_event_start.value() |
+ .InMilliseconds(), |
+ 1); |
+ |
+ histogram_tester().ExpectTotalCount( |
+ internal::kHistogramServiceWorkerLoadSearchNoSW, 1); |
+ histogram_tester().ExpectBucketCount( |
+ internal::kHistogramServiceWorkerLoadSearchNoSW, |
+ timing.document_timing->load_event_start.value().InMilliseconds(), 1); |
+ |
+ AssertNoServiceWorkerHistogramsLogged(); |
+ AssertNoInboxHistogramsLogged(); |
+ AssertNoSearchHistogramsLogged(); |
} |