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

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

Issue 2350473002: [page_load_metrics] Add support for chrome:// urls and add extensions observer (Closed)
Patch Set: fix about:blank check Created 4 years, 3 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 "base/time/time.h" 7 #include "base/time/time.h"
8 #include "chrome/browser/page_load_metrics/metrics_web_contents_observer.h" 8 #include "chrome/browser/page_load_metrics/metrics_web_contents_observer.h"
9 #include "chrome/browser/page_load_metrics/observers/aborts_page_load_metrics_ob server.h" 9 #include "chrome/browser/page_load_metrics/observers/aborts_page_load_metrics_ob server.h"
10 #include "chrome/browser/page_load_metrics/observers/core_page_load_metrics_obse rver.h" 10 #include "chrome/browser/page_load_metrics/observers/core_page_load_metrics_obse rver.h"
11 #include "chrome/browser/page_load_metrics/observers/document_write_page_load_me trics_observer.h" 11 #include "chrome/browser/page_load_metrics/observers/document_write_page_load_me trics_observer.h"
12 #include "chrome/browser/page_load_metrics/observers/no_state_prefetch_page_load _metrics_observer.h" 12 #include "chrome/browser/page_load_metrics/observers/no_state_prefetch_page_load _metrics_observer.h"
13 #include "chrome/browser/page_load_metrics/observers/webui_page_load_metrics_obs erver.h"
13 #include "chrome/browser/prerender/prerender_histograms.h" 14 #include "chrome/browser/prerender/prerender_histograms.h"
14 #include "chrome/browser/prerender/prerender_origin.h" 15 #include "chrome/browser/prerender/prerender_origin.h"
15 #include "chrome/browser/profiles/profile.h" 16 #include "chrome/browser/profiles/profile.h"
16 #include "chrome/browser/ui/browser.h" 17 #include "chrome/browser/ui/browser.h"
17 #include "chrome/browser/ui/browser_navigator_params.h" 18 #include "chrome/browser/ui/browser_navigator_params.h"
18 #include "chrome/browser/ui/tabs/tab_strip_model.h" 19 #include "chrome/browser/ui/tabs/tab_strip_model.h"
19 #include "chrome/common/url_constants.h" 20 #include "chrome/common/url_constants.h"
20 #include "chrome/test/base/in_process_browser_test.h" 21 #include "chrome/test/base/in_process_browser_test.h"
21 #include "chrome/test/base/ui_test_utils.h" 22 #include "chrome/test/base/ui_test_utils.h"
22 #include "content/public/browser/browser_thread.h" 23 #include "content/public/browser/browser_thread.h"
(...skipping 250 matching lines...) Expand 10 before | Expand all | Expand 10 after
273 274
274 ui_test_utils::NavigateToURL( 275 ui_test_utils::NavigateToURL(
275 browser(), embedded_test_server()->GetURL( 276 browser(), embedded_test_server()->GetURL(
276 "/page_load_metrics/document_write_no_script.html")); 277 "/page_load_metrics/document_write_no_script.html"));
277 NavigateToUntrackedUrl(); 278 NavigateToUntrackedUrl();
278 279
279 histogram_tester_.ExpectTotalCount( 280 histogram_tester_.ExpectTotalCount(
280 internal::kHistogramDocWriteBlockParseStartToFirstContentfulPaint, 0); 281 internal::kHistogramDocWriteBlockParseStartToFirstContentfulPaint, 0);
281 } 282 }
282 283
284 IN_PROC_BROWSER_TEST_F(PageLoadMetricsBrowserTest, ExtensionsPage) {
285 ASSERT_TRUE(embedded_test_server()->Start());
286 ui_test_utils::NavigateToURL(browser(), GURL("chrome://extensions"));
287 NavigateToUntrackedUrl();
288 histogram_tester_.ExpectTotalCount(
289 internal::kHistogramExtensionsParseDuration, 1);
290 }
291
292 IN_PROC_BROWSER_TEST_F(PageLoadMetricsBrowserTest, ExtensionsPageAbout) {
293 ASSERT_TRUE(embedded_test_server()->Start());
294 ui_test_utils::NavigateToURL(browser(), GURL("about:extensions"));
295 NavigateToUntrackedUrl();
296 histogram_tester_.ExpectTotalCount(
297 internal::kHistogramExtensionsParseDuration, 1);
298 }
299
283 IN_PROC_BROWSER_TEST_F(PageLoadMetricsBrowserTest, BadXhtml) { 300 IN_PROC_BROWSER_TEST_F(PageLoadMetricsBrowserTest, BadXhtml) {
284 ASSERT_TRUE(embedded_test_server()->Start()); 301 ASSERT_TRUE(embedded_test_server()->Start());
285 302
286 // When an XHTML page contains invalid XML, it causes a paint of the error 303 // When an XHTML page contains invalid XML, it causes a paint of the error
287 // message without a layout. Page load metrics currently treats this as an 304 // message without a layout. Page load metrics currently treats this as an
288 // error. Eventually, we'll fix this by special casing the handling of 305 // error. Eventually, we'll fix this by special casing the handling of
289 // documents with non-well-formed XML on the blink side. See crbug.com/627607 306 // documents with non-well-formed XML on the blink side. See crbug.com/627607
290 // for more. 307 // for more.
291 ui_test_utils::NavigateToURL( 308 ui_test_utils::NavigateToURL(
292 browser(), 309 browser(),
(...skipping 211 matching lines...) Expand 10 before | Expand all | Expand 10 after
504 521
505 histogram_tester_.ExpectTotalCount( 522 histogram_tester_.ExpectTotalCount(
506 prerender::PrerenderHistograms::GetFirstContentfulPaintHistogramName( 523 prerender::PrerenderHistograms::GetFirstContentfulPaintHistogramName(
507 prerender::ORIGIN_NONE, false, true, base::TimeDelta()), 524 prerender::ORIGIN_NONE, false, true, base::TimeDelta()),
508 1); 525 1);
509 histogram_tester_.ExpectTotalCount( 526 histogram_tester_.ExpectTotalCount(
510 prerender::PrerenderHistograms::GetFirstContentfulPaintHistogramName( 527 prerender::PrerenderHistograms::GetFirstContentfulPaintHistogramName(
511 prerender::ORIGIN_NONE, false, false, base::TimeDelta()), 528 prerender::ORIGIN_NONE, false, false, base::TimeDelta()),
512 0); 529 0);
513 } 530 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698