| Index: chrome/browser/page_load_metrics/observers/resource_tracking_page_load_metrics_observer_unittest.cc | 
| diff --git a/chrome/browser/page_load_metrics/observers/resource_tracking_page_load_metrics_observer_unittest.cc b/chrome/browser/page_load_metrics/observers/resource_tracking_page_load_metrics_observer_unittest.cc | 
| index 73611a0e1356f36cb57b75fb400145631bba66c3..bc01fb4b83462db576887ff6e4903bf2bc48a809 100644 | 
| --- a/chrome/browser/page_load_metrics/observers/resource_tracking_page_load_metrics_observer_unittest.cc | 
| +++ b/chrome/browser/page_load_metrics/observers/resource_tracking_page_load_metrics_observer_unittest.cc | 
| @@ -5,6 +5,8 @@ | 
| #include "chrome/browser/page_load_metrics/observers/resource_tracking_page_load_metrics_observer.h" | 
|  | 
| #include "chrome/browser/page_load_metrics/observers/page_load_metrics_observer_test_harness.h" | 
| +#include "components/offline_pages/core/background/resource_tracker_observer.h" | 
| +#include "components/offline_pages/core/background/resource_tracker_observer_stub.h" | 
|  | 
| namespace { | 
| const char kFakeUrl[] = "http://www.google.com/nothingotseehere.html"; | 
| @@ -15,13 +17,17 @@ namespace page_load_metrics { | 
| class ResourceTrackingPageLoadMetricsObserverTest | 
| : public page_load_metrics::PageLoadMetricsObserverTestHarness { | 
| public: | 
| -  ResourceTrackingPageLoadMetricsObserverTest() : observer_(nullptr) {} | 
| +  ResourceTrackingPageLoadMetricsObserverTest() | 
| +      : observer_(nullptr), | 
| +        resource_watcher_(new offline_pages::ResourceTrackerObserverStub) {} | 
| + | 
| +  // FUTURE: If we ever override SetUp, ensure we call the base class SetUp. | 
|  | 
| protected: | 
| void RegisterObservers(page_load_metrics::PageLoadTracker* tracker) override { | 
| std::unique_ptr<page_load_metrics::ResourceTrackingPageLoadMetricsObserver> | 
| -        observer( | 
| -            new page_load_metrics::ResourceTrackingPageLoadMetricsObserver()); | 
| +        observer(new page_load_metrics::ResourceTrackingPageLoadMetricsObserver( | 
| +            resource_watcher())); | 
| // Keep track of the observer pointer so we can check it in the unit test. | 
| observer_ = observer.get(); | 
| tracker->AddObserver(std::move(observer)); | 
| @@ -31,10 +37,15 @@ class ResourceTrackingPageLoadMetricsObserverTest | 
| return observer_; | 
| } | 
|  | 
| +  offline_pages::ResourceTrackerObserverStub* resource_watcher() { | 
| +    return resource_watcher_; | 
| +  } | 
| + | 
| private: | 
| // observer_ is owned by the last created PageLoadTracker, and its lifetime is | 
| // dictated by that tracker's lifetime. | 
| page_load_metrics::ResourceTrackingPageLoadMetricsObserver* observer_; | 
| +  offline_pages::ResourceTrackerObserverStub* resource_watcher_; | 
| }; | 
|  | 
| TEST_F(ResourceTrackingPageLoadMetricsObserverTest, StartAndFinish) { | 
| @@ -70,6 +81,14 @@ TEST_F(ResourceTrackingPageLoadMetricsObserverTest, StartAndFinish) { | 
| content::ResourceType::RESOURCE_TYPE_IMAGE, &started, &completed); | 
| EXPECT_EQ(2, started); | 
| EXPECT_EQ(1, completed); | 
| +  int64_t resource_watcher_started = -1; | 
| +  int64_t resource_watcher_completed = -1; | 
| +  ASSERT_NE(nullptr, resource_watcher()); | 
| +  resource_watcher()->GetResourcePercentageCounts( | 
| +      offline_pages::ResourceDataType::IMAGE, &resource_watcher_started, | 
| +      &resource_watcher_completed); | 
| +  EXPECT_EQ(2, resource_watcher_started); | 
| +  EXPECT_EQ(1, resource_watcher_completed); | 
| } | 
|  | 
| }  // namespace page_load_metrics | 
|  |