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

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

Issue 1857443002: Plumb experiment flags through page_load_metrics and add a new observer (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@page_load_experiments
Patch Set: No need to add Default group to variation config Created 4 years, 8 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
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/macros.h" 5 #include "base/macros.h"
6 #include "base/test/histogram_tester.h" 6 #include "base/test/histogram_tester.h"
7 #include "chrome/browser/page_load_metrics/observers/core_page_load_metrics_obse rver.h" 7 #include "chrome/browser/page_load_metrics/observers/core_page_load_metrics_obse rver.h"
8 #include "chrome/browser/page_load_metrics/observers/document_write_page_load_me trics_observer.h"
8 #include "chrome/test/base/in_process_browser_test.h" 9 #include "chrome/test/base/in_process_browser_test.h"
9 #include "chrome/test/base/ui_test_utils.h" 10 #include "chrome/test/base/ui_test_utils.h"
10 #include "net/test/embedded_test_server/embedded_test_server.h" 11 #include "net/test/embedded_test_server/embedded_test_server.h"
11 12
12 class MetricsWebContentsObserverBrowserTest : public InProcessBrowserTest { 13 class MetricsWebContentsObserverBrowserTest : public InProcessBrowserTest {
13 public: 14 public:
14 MetricsWebContentsObserverBrowserTest() {} 15 MetricsWebContentsObserverBrowserTest() {}
15 ~MetricsWebContentsObserverBrowserTest() override {} 16 ~MetricsWebContentsObserverBrowserTest() override {}
16 17
17 protected: 18 protected:
(...skipping 33 matching lines...) Expand 10 before | Expand all | Expand 10 after
51 embedded_test_server()->GetURL("/title1.html")); 52 embedded_test_server()->GetURL("/title1.html"));
52 ui_test_utils::NavigateToURL( 53 ui_test_utils::NavigateToURL(
53 browser(), embedded_test_server()->GetURL("/title1.html#hash")); 54 browser(), embedded_test_server()->GetURL("/title1.html#hash"));
54 ui_test_utils::NavigateToURL(browser(), 55 ui_test_utils::NavigateToURL(browser(),
55 embedded_test_server()->GetURL("/title2.html")); 56 embedded_test_server()->GetURL("/title2.html"));
56 57
57 histogram_tester_.ExpectTotalCount(internal::kHistogramDomContentLoaded, 1); 58 histogram_tester_.ExpectTotalCount(internal::kHistogramDomContentLoaded, 1);
58 histogram_tester_.ExpectTotalCount(internal::kHistogramLoad, 1); 59 histogram_tester_.ExpectTotalCount(internal::kHistogramLoad, 1);
59 histogram_tester_.ExpectTotalCount(internal::kHistogramFirstLayout, 1); 60 histogram_tester_.ExpectTotalCount(internal::kHistogramFirstLayout, 1);
60 } 61 }
62
63 IN_PROC_BROWSER_TEST_F(MetricsWebContentsObserverBrowserTest,
64 PreloadDocumentWrite) {
65 ASSERT_TRUE(embedded_test_server()->Start());
66
67 ui_test_utils::NavigateToURL(
68 browser(), embedded_test_server()->GetURL(
69 "/page_load_metrics/document_write_external_script.html"));
70 ui_test_utils::NavigateToURL(browser(),
71 embedded_test_server()->GetURL("/title2.html"));
72
73 histogram_tester_.ExpectTotalCount(
74 internal::kHistogramDocWriteParseStartToFirstContentfulPaint, 1);
75 }
76
77 IN_PROC_BROWSER_TEST_F(MetricsWebContentsObserverBrowserTest,
78 NoPreloadDocumentWrite) {
79 ASSERT_TRUE(embedded_test_server()->Start());
80
81 ui_test_utils::NavigateToURL(
82 browser(), embedded_test_server()->GetURL(
83 "/page_load_metrics/document_write_no_script.html"));
84 ui_test_utils::NavigateToURL(browser(),
85 embedded_test_server()->GetURL("/title2.html"));
86
87 histogram_tester_.ExpectTotalCount(
88 internal::kHistogramDocWriteParseStartToFirstContentfulPaint, 0);
89 }
90
91 IN_PROC_BROWSER_TEST_F(MetricsWebContentsObserverBrowserTest, NoDocumentWrite) {
92 ASSERT_TRUE(embedded_test_server()->Start());
93
94 ui_test_utils::NavigateToURL(browser(),
95 embedded_test_server()->GetURL("/title1.html"));
96 ui_test_utils::NavigateToURL(browser(),
97 embedded_test_server()->GetURL("/title2.html"));
98 histogram_tester_.ExpectTotalCount(
99 internal::kHistogramDocWriteParseStartToFirstContentfulPaint, 0);
100 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698