Commit b8e595a2 authored by Tao Bai's avatar Tao Bai Committed by Commit Bot

Move CorePageLoadMetricsObserver to components

This essentially adds CorePageLoadMetricsObserver to WebView, the
integration test will be in following patch to keep patch simple.

Bug: 995880, 992028
Change-Id: Icb25cad2690323d9a0dbd495c57f8f3b461d7c91
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1862251
Commit-Queue: Tao Bai <michaelbai@chromium.org>
Reviewed-by: default avatarBryan McQuade <bmcquade@chromium.org>
Cr-Commit-Position: refs/heads/master@{#706764}
parent 31e1dd18
......@@ -991,10 +991,6 @@ jumbo_split_static_library("browser") {
"page_load_metrics/observers/ad_metrics/frame_data.h",
"page_load_metrics/observers/amp_page_load_metrics_observer.cc",
"page_load_metrics/observers/amp_page_load_metrics_observer.h",
"page_load_metrics/observers/click_input_tracker.cc",
"page_load_metrics/observers/click_input_tracker.h",
"page_load_metrics/observers/core_page_load_metrics_observer.cc",
"page_load_metrics/observers/core_page_load_metrics_observer.h",
"page_load_metrics/observers/data_reduction_proxy_metrics_observer.cc",
"page_load_metrics/observers/data_reduction_proxy_metrics_observer.h",
"page_load_metrics/observers/data_reduction_proxy_metrics_observer_base.cc",
......@@ -1017,8 +1013,6 @@ jumbo_split_static_library("browser") {
"page_load_metrics/observers/https_engagement_metrics/https_engagement_service.h",
"page_load_metrics/observers/https_engagement_metrics/https_engagement_service_factory.cc",
"page_load_metrics/observers/https_engagement_metrics/https_engagement_service_factory.h",
"page_load_metrics/observers/largest_contentful_paint_handler.cc",
"page_load_metrics/observers/largest_contentful_paint_handler.h",
"page_load_metrics/observers/live_tab_count_page_load_metrics_observer.cc",
"page_load_metrics/observers/live_tab_count_page_load_metrics_observer.h",
"page_load_metrics/observers/loading_predictor_page_load_metrics_observer.cc",
......
......@@ -8,7 +8,7 @@
#include <jni.h>
#include "base/macros.h"
#include "chrome/browser/page_load_metrics/observers/largest_contentful_paint_handler.h"
#include "components/page_load_metrics/browser/observers/largest_contentful_paint_handler.h"
#include "components/page_load_metrics/browser/page_load_metrics_observer.h"
namespace network {
......
......@@ -13,7 +13,6 @@
#include "chrome/browser/browser_process.h"
#include "chrome/browser/content_settings/cookie_settings_factory.h"
#include "chrome/browser/engagement/site_engagement_service.h"
#include "chrome/browser/page_load_metrics/observers/largest_contentful_paint_handler.h"
#include "chrome/browser/prerender/prerender_final_status.h"
#include "chrome/browser/prerender/prerender_manager.h"
#include "chrome/browser/prerender/prerender_manager_factory.h"
......
......@@ -9,7 +9,7 @@
#include "base/metrics/ukm_source_id.h"
#include "base/optional.h"
#include "base/time/time.h"
#include "chrome/browser/page_load_metrics/observers/largest_contentful_paint_handler.h"
#include "components/page_load_metrics/browser/observers/largest_contentful_paint_handler.h"
#include "components/page_load_metrics/browser/page_load_metrics_observer.h"
#include "net/http/http_response_info.h"
#include "services/metrics/public/cpp/ukm_source.h"
......
......@@ -24,7 +24,6 @@
#include "base/time/time.h"
#include "build/build_config.h"
#include "chrome/browser/page_load_metrics/observers/aborts_page_load_metrics_observer.h"
#include "chrome/browser/page_load_metrics/observers/core_page_load_metrics_observer.h"
#include "chrome/browser/page_load_metrics/observers/document_write_page_load_metrics_observer.h"
#include "chrome/browser/page_load_metrics/observers/no_state_prefetch_page_load_metrics_observer.h"
#include "chrome/browser/page_load_metrics/observers/session_restore_page_load_metrics_observer.h"
......@@ -56,6 +55,7 @@
#include "chrome/test/base/ui_test_utils.h"
#include "components/keep_alive_registry/keep_alive_types.h"
#include "components/keep_alive_registry/scoped_keep_alive.h"
#include "components/page_load_metrics/browser/observers/core_page_load_metrics_observer.h"
#include "components/page_load_metrics/browser/observers/use_counter_page_load_metrics_observer.h"
#include "components/page_load_metrics/browser/page_load_metrics_test_waiter.h"
#include "components/page_load_metrics/browser/page_load_tracker.h"
......
......@@ -12,7 +12,6 @@
#include "chrome/browser/page_load_metrics/observers/aborts_page_load_metrics_observer.h"
#include "chrome/browser/page_load_metrics/observers/ad_metrics/ads_page_load_metrics_observer.h"
#include "chrome/browser/page_load_metrics/observers/amp_page_load_metrics_observer.h"
#include "chrome/browser/page_load_metrics/observers/core_page_load_metrics_observer.h"
#include "chrome/browser/page_load_metrics/observers/data_reduction_proxy_metrics_observer.h"
#include "chrome/browser/page_load_metrics/observers/data_saver_site_breakdown_metrics_observer.h"
#include "chrome/browser/page_load_metrics/observers/data_use_metrics_observer.h"
......@@ -99,7 +98,6 @@ void PageLoadMetricsEmbedder::RegisterEmbedderObservers(
if (!IsPrerendering()) {
tracker->AddObserver(std::make_unique<AbortsPageLoadMetricsObserver>());
tracker->AddObserver(std::make_unique<AMPPageLoadMetricsObserver>());
tracker->AddObserver(std::make_unique<CorePageLoadMetricsObserver>());
tracker->AddObserver(
std::make_unique<
data_reduction_proxy::DataReductionProxyMetricsObserver>());
......
......@@ -3073,8 +3073,6 @@ test("unit_tests") {
"../browser/page_load_metrics/observers/aborts_page_load_metrics_observer_unittest.cc",
"../browser/page_load_metrics/observers/ad_metrics/ads_page_load_metrics_observer_unittest.cc",
"../browser/page_load_metrics/observers/amp_page_load_metrics_observer_unittest.cc",
"../browser/page_load_metrics/observers/click_input_tracker_unittest.cc",
"../browser/page_load_metrics/observers/core_page_load_metrics_observer_unittest.cc",
"../browser/page_load_metrics/observers/data_reduction_proxy_metrics_observer_base_unittest.cc",
"../browser/page_load_metrics/observers/data_reduction_proxy_metrics_observer_test_utils.cc",
"../browser/page_load_metrics/observers/data_reduction_proxy_metrics_observer_test_utils.h",
......
......@@ -10,6 +10,12 @@ source_set("browser") {
"metrics_navigation_throttle.h",
"metrics_web_contents_observer.cc",
"metrics_web_contents_observer.h",
"observers/click_input_tracker.cc",
"observers/click_input_tracker.h",
"observers/core_page_load_metrics_observer.cc",
"observers/core_page_load_metrics_observer.h",
"observers/largest_contentful_paint_handler.cc",
"observers/largest_contentful_paint_handler.h",
"observers/use_counter/ukm_features.cc",
"observers/use_counter_page_load_metrics_observer.cc",
"observers/use_counter_page_load_metrics_observer.h",
......@@ -73,6 +79,8 @@ source_set("unit_tests") {
testonly = true
sources = [
"metrics_web_contents_observer_unittest.cc",
"observers/click_input_tracker_unittest.cc",
"observers/core_page_load_metrics_observer_unittest.cc",
"observers/page_load_metrics_observer_content_test_harness.cc",
"observers/page_load_metrics_observer_content_test_harness.h",
"observers/use_counter_page_load_metrics_observer_unittest.cc",
......@@ -85,9 +93,11 @@ source_set("unit_tests") {
"//base/test:test_support",
"//components/page_load_metrics/common:page_load_metrics_mojom",
"//components/page_load_metrics/common:test_support",
"//components/ukm:test_support",
"//components/ukm/content",
"//content/public/browser",
"//content/test:test_support",
"//services/metrics/public/cpp:ukm_builders",
"//testing/gtest",
"//url",
]
......
......@@ -2,7 +2,7 @@
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
#include "chrome/browser/page_load_metrics/observers/click_input_tracker.h"
#include "components/page_load_metrics/browser/observers/click_input_tracker.h"
#include "base/metrics/field_trial_params.h"
#include "base/metrics/histogram_macros.h"
......
......@@ -2,8 +2,8 @@
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
#ifndef CHROME_BROWSER_PAGE_LOAD_METRICS_OBSERVERS_CLICK_INPUT_TRACKER_H_
#define CHROME_BROWSER_PAGE_LOAD_METRICS_OBSERVERS_CLICK_INPUT_TRACKER_H_
#ifndef COMPONENTS_PAGE_LOAD_METRICS_BROWSER_OBSERVERS_CLICK_INPUT_TRACKER_H_
#define COMPONENTS_PAGE_LOAD_METRICS_BROWSER_OBSERVERS_CLICK_INPUT_TRACKER_H_
#include "base/feature_list.h"
#include "base/time/time.h"
......@@ -72,4 +72,4 @@ class ClickInputTracker {
} // namespace page_load_metrics
#endif // CHROME_BROWSER_PAGE_LOAD_METRICS_OBSERVERS_CLICK_INPUT_TRACKER_H_
#endif // COMPONENTS_PAGE_LOAD_METRICS_BROWSER_OBSERVERS_CLICK_INPUT_TRACKER_H_
......@@ -2,7 +2,7 @@
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
#include "chrome/browser/page_load_metrics/observers/click_input_tracker.h"
#include "components/page_load_metrics/browser/observers/click_input_tracker.h"
#include "base/test/metrics/histogram_tester.h"
#include "base/test/test_simple_task_runner.h"
......
......@@ -2,7 +2,7 @@
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
#include "chrome/browser/page_load_metrics/observers/core_page_load_metrics_observer.h"
#include "components/page_load_metrics/browser/observers/core_page_load_metrics_observer.h"
#include <stddef.h>
#include <stdint.h>
......@@ -11,8 +11,6 @@
#include "base/feature_list.h"
#include "base/metrics/histogram_macros.h"
#include "chrome/browser/browser_process.h"
#include "chrome/browser/page_load_metrics/observers/largest_contentful_paint_handler.h"
#include "components/page_load_metrics/browser/page_load_metrics_util.h"
#include "content/public/common/process_type.h"
#include "net/http/http_response_headers.h"
......
......@@ -2,11 +2,11 @@
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
#ifndef CHROME_BROWSER_PAGE_LOAD_METRICS_OBSERVERS_CORE_PAGE_LOAD_METRICS_OBSERVER_H_
#define CHROME_BROWSER_PAGE_LOAD_METRICS_OBSERVERS_CORE_PAGE_LOAD_METRICS_OBSERVER_H_
#ifndef COMPONENTS_PAGE_LOAD_METRICS_BROWSER_OBSERVERS_CORE_PAGE_LOAD_METRICS_OBSERVER_H_
#define COMPONENTS_PAGE_LOAD_METRICS_BROWSER_OBSERVERS_CORE_PAGE_LOAD_METRICS_OBSERVER_H_
#include "chrome/browser/page_load_metrics/observers/click_input_tracker.h"
#include "chrome/browser/page_load_metrics/observers/largest_contentful_paint_handler.h"
#include "components/page_load_metrics/browser/observers/click_input_tracker.h"
#include "components/page_load_metrics/browser/observers/largest_contentful_paint_handler.h"
#include "components/page_load_metrics/browser/page_load_metrics_observer.h"
#include "services/metrics/public/cpp/ukm_source.h"
......@@ -268,4 +268,4 @@ class CorePageLoadMetricsObserver
DISALLOW_COPY_AND_ASSIGN(CorePageLoadMetricsObserver);
};
#endif // CHROME_BROWSER_PAGE_LOAD_METRICS_OBSERVERS_CORE_PAGE_LOAD_METRICS_OBSERVER_H_
#endif // COMPONENTS_PAGE_LOAD_METRICS_BROWSER_OBSERVERS_CORE_PAGE_LOAD_METRICS_OBSERVER_H_
......@@ -2,13 +2,12 @@
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
#include "chrome/browser/page_load_metrics/observers/core_page_load_metrics_observer.h"
#include "components/page_load_metrics/browser/observers/core_page_load_metrics_observer.h"
#include <memory>
#include "chrome/browser/page_load_metrics/observers/page_load_metrics_observer_test_harness.h"
#include "chrome/test/base/testing_browser_process.h"
#include "components/page_load_metrics/browser/metrics_web_contents_observer.h"
#include "components/page_load_metrics/browser/observers/page_load_metrics_observer_content_test_harness.h"
#include "components/page_load_metrics/browser/page_load_metrics_util.h"
#include "components/page_load_metrics/browser/page_load_tracker.h"
#include "components/page_load_metrics/common/test/page_load_metrics_test_util.h"
......@@ -33,14 +32,14 @@ const char kDefaultTestUrl2[] = "https://whatever.com";
} // namespace
class CorePageLoadMetricsObserverTest
: public page_load_metrics::PageLoadMetricsObserverTestHarness {
: public page_load_metrics::PageLoadMetricsObserverContentTestHarness {
protected:
void RegisterObservers(page_load_metrics::PageLoadTracker* tracker) override {
tracker->AddObserver(std::make_unique<CorePageLoadMetricsObserver>());
}
void SetUp() override {
page_load_metrics::PageLoadMetricsObserverTestHarness::SetUp();
page_load_metrics::PageLoadMetricsObserverContentTestHarness::SetUp();
page_load_metrics::LargestContentfulPaintHandler::SetTestMode(true);
}
};
......
......@@ -2,7 +2,7 @@
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
#include "chrome/browser/page_load_metrics/observers/largest_contentful_paint_handler.h"
#include "components/page_load_metrics/browser/observers/largest_contentful_paint_handler.h"
#include "components/page_load_metrics/browser/page_load_metrics_observer_delegate.h"
#include "components/page_load_metrics/common/page_load_metrics.mojom.h"
......
// Copyright 2019 The Chromium Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
#ifndef CHROME_BROWSER_PAGE_LOAD_METRICS_OBSERVERS_LARGEST_CONTENTFUL_PAINT_HANDLER_H_
#define CHROME_BROWSER_PAGE_LOAD_METRICS_OBSERVERS_LARGEST_CONTENTFUL_PAINT_HANDLER_H_
#ifndef COMPONENTS_PAGE_LOAD_METRICS_BROWSER_OBSERVERS_LARGEST_CONTENTFUL_PAINT_HANDLER_H_
#define COMPONENTS_PAGE_LOAD_METRICS_BROWSER_OBSERVERS_LARGEST_CONTENTFUL_PAINT_HANDLER_H_
#include <map>
......@@ -119,4 +119,4 @@ class LargestContentfulPaintHandler {
} // namespace page_load_metrics
#endif // CHROME_BROWSER_PAGE_LOAD_METRICS_OBSERVERS_LARGEST_CONTENTFUL_PAINT_HANDLER_H_
#endif // COMPONENTS_PAGE_LOAD_METRICS_BROWSER_OBSERVERS_LARGEST_CONTENTFUL_PAINT_HANDLER_H_
......@@ -5,6 +5,8 @@
#include "components/page_load_metrics/browser/page_load_metrics_embedder_base.h"
#include "base/timer/timer.h"
#include "components/page_load_metrics/browser/observers/core_page_load_metrics_observer.h"
#include "components/page_load_metrics/browser/observers/use_counter_page_load_metrics_observer.h"
#include "components/page_load_metrics/browser/page_load_tracker.h"
......@@ -18,8 +20,10 @@ PageLoadMetricsEmbedderBase::~PageLoadMetricsEmbedderBase() = default;
void PageLoadMetricsEmbedderBase::RegisterObservers(PageLoadTracker* tracker) {
// Register observers used by all embedders
if (!IsPrerendering())
if (!IsPrerendering()) {
tracker->AddObserver(std::make_unique<CorePageLoadMetricsObserver>());
tracker->AddObserver(std::make_unique<UseCounterPageLoadMetricsObserver>());
}
// Allow the embedder to register any embedder-specific observers
RegisterEmbedderObservers(tracker);
}
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment