Chromium Code Reviews| Index: chrome/browser/page_load_metrics/observers/page_load_metrics_observer_test_harness.cc |
| diff --git a/chrome/browser/page_load_metrics/observers/page_load_metrics_observer_test_harness.cc b/chrome/browser/page_load_metrics/observers/page_load_metrics_observer_test_harness.cc |
| index bc777a07be34d4562fef85557e98d1068d3adab8..38de85d82945dede1cada93de1fea2ec831365ba 100644 |
| --- a/chrome/browser/page_load_metrics/observers/page_load_metrics_observer_test_harness.cc |
| +++ b/chrome/browser/page_load_metrics/observers/page_load_metrics_observer_test_harness.cc |
| @@ -38,6 +38,12 @@ class TestPageLoadMetricsEmbedderInterface |
| test_->RegisterObservers(tracker); |
| } |
| + std::unique_ptr<base::Timer> CreateTimer() override { |
| + std::unique_ptr<WeakMockTimer> timer = base::MakeUnique<WeakMockTimer>(); |
|
Charlie Harrison
2017/05/30 14:49:07
nit: usually base::MakeUnique is paired with auto:
Bryan McQuade
2017/05/30 15:30:22
done
|
| + test_->SetMockTimer(timer->AsWeakPtr()); |
| + return std::move(timer); |
| + } |
| + |
| private: |
| PageLoadMetricsObserverTestHarness* test_; |
| @@ -146,6 +152,12 @@ void PageLoadMetricsObserverTestHarness::SimulateTimingAndMetadataUpdate( |
| const mojom::PageLoadTiming& timing, |
| const mojom::PageLoadMetadata& metadata) { |
| observer_->OnTimingUpdated(web_contents()->GetMainFrame(), timing, metadata); |
| + // If sending the timing update caused the PageLoadMetricsUpdateDispatcher to |
| + // schedule a buffering timer, then fire it now so metrics are dispatched to |
| + // observers. |
| + base::MockTimer* mock_timer = GetMockTimer(); |
| + if (mock_timer && mock_timer->IsRunning()) |
| + mock_timer->Fire(); |
| } |
| void PageLoadMetricsObserverTestHarness::SimulateStartedResource( |