Commit e940281b authored by Steve Kobes's avatar Steve Kobes Committed by Commit Bot

Add PageLoadMetricsObserverTestHarness::SimulateRenderDataUpdate.

This lets tests supply PageRenderData to the MetricsWebContentsObserver
through the plumbing added in crrev.com/603785.

Also remove an unused declaration and make SimulatePageLoadTimingUpdate
private in PageLoadMetricsObserverTester.

Bug: 581518
Change-Id: I89409eff3346855c03450ceeb2030b63068d6d3a
Reviewed-on: https://chromium-review.googlesource.com/c/1318058
Commit-Queue: Steve Kobes <skobes@chromium.org>
Reviewed-by: default avatarBryan McQuade <bmcquade@chromium.org>
Cr-Commit-Position: refs/heads/master@{#606275}
parent 203f9640
...@@ -69,6 +69,11 @@ void PageLoadMetricsObserverTestHarness::SimulateFeaturesUpdate( ...@@ -69,6 +69,11 @@ void PageLoadMetricsObserverTestHarness::SimulateFeaturesUpdate(
tester_->SimulateFeaturesUpdate(new_features); tester_->SimulateFeaturesUpdate(new_features);
} }
void PageLoadMetricsObserverTestHarness::SimulateRenderDataUpdate(
const mojom::PageRenderData& render_data) {
tester_->SimulateRenderDataUpdate(render_data);
}
void PageLoadMetricsObserverTestHarness::SimulateLoadedResource( void PageLoadMetricsObserverTestHarness::SimulateLoadedResource(
const ExtraRequestCompleteInfo& info) { const ExtraRequestCompleteInfo& info) {
tester_->SimulateLoadedResource(info, content::GlobalRequestID()); tester_->SimulateLoadedResource(info, content::GlobalRequestID());
......
...@@ -79,12 +79,9 @@ class PageLoadMetricsObserverTestHarness ...@@ -79,12 +79,9 @@ class PageLoadMetricsObserverTestHarness
void SimulateTimingAndMetadataUpdate(const mojom::PageLoadTiming& timing, void SimulateTimingAndMetadataUpdate(const mojom::PageLoadTiming& timing,
const mojom::PageLoadMetadata& metadata); const mojom::PageLoadMetadata& metadata);
void SimulateFeaturesUpdate(const mojom::PageLoadFeatures& new_features); void SimulateFeaturesUpdate(const mojom::PageLoadFeatures& new_features);
void SimulatePageLoadTimingUpdate(
const mojom::PageLoadTiming& timing,
const mojom::PageLoadMetadata& metadata,
const mojom::PageLoadFeatures& new_features);
void SimulateResourceDataUseUpdate( void SimulateResourceDataUseUpdate(
const std::vector<mojom::ResourceDataUpdatePtr>& resources); const std::vector<mojom::ResourceDataUpdatePtr>& resources);
void SimulateRenderDataUpdate(const mojom::PageRenderData& render_data);
// Simulates a loaded resource. Main frame resources must specify a // Simulates a loaded resource. Main frame resources must specify a
// GlobalRequestID, using the SimulateLoadedResource() method that takes a // GlobalRequestID, using the SimulateLoadedResource() method that takes a
......
...@@ -68,29 +68,40 @@ PageLoadMetricsObserverTester::~PageLoadMetricsObserverTester() {} ...@@ -68,29 +68,40 @@ PageLoadMetricsObserverTester::~PageLoadMetricsObserverTester() {}
void PageLoadMetricsObserverTester::SimulateTimingUpdate( void PageLoadMetricsObserverTester::SimulateTimingUpdate(
const mojom::PageLoadTiming& timing) { const mojom::PageLoadTiming& timing) {
SimulatePageLoadTimingUpdate(timing, mojom::PageLoadMetadata(), SimulatePageLoadTimingUpdate(timing, mojom::PageLoadMetadata(),
mojom::PageLoadFeatures()); mojom::PageLoadFeatures(),
mojom::PageRenderData());
} }
void PageLoadMetricsObserverTester::SimulateTimingAndMetadataUpdate( void PageLoadMetricsObserverTester::SimulateTimingAndMetadataUpdate(
const mojom::PageLoadTiming& timing, const mojom::PageLoadTiming& timing,
const mojom::PageLoadMetadata& metadata) { const mojom::PageLoadMetadata& metadata) {
SimulatePageLoadTimingUpdate(timing, metadata, mojom::PageLoadFeatures()); SimulatePageLoadTimingUpdate(timing, metadata, mojom::PageLoadFeatures(),
mojom::PageRenderData());
} }
void PageLoadMetricsObserverTester::SimulateFeaturesUpdate( void PageLoadMetricsObserverTester::SimulateFeaturesUpdate(
const mojom::PageLoadFeatures& new_features) { const mojom::PageLoadFeatures& new_features) {
SimulatePageLoadTimingUpdate(mojom::PageLoadTiming(), SimulatePageLoadTimingUpdate(mojom::PageLoadTiming(),
mojom::PageLoadMetadata(), new_features); mojom::PageLoadMetadata(), new_features,
mojom::PageRenderData());
}
void PageLoadMetricsObserverTester::SimulateRenderDataUpdate(
const mojom::PageRenderData& render_data) {
SimulatePageLoadTimingUpdate(mojom::PageLoadTiming(),
mojom::PageLoadMetadata(),
mojom::PageLoadFeatures(), render_data);
} }
void PageLoadMetricsObserverTester::SimulatePageLoadTimingUpdate( void PageLoadMetricsObserverTester::SimulatePageLoadTimingUpdate(
const mojom::PageLoadTiming& timing, const mojom::PageLoadTiming& timing,
const mojom::PageLoadMetadata& metadata, const mojom::PageLoadMetadata& metadata,
const mojom::PageLoadFeatures& new_features) { const mojom::PageLoadFeatures& new_features,
const mojom::PageRenderData& render_data) {
observer_->OnTimingUpdated(web_contents()->GetMainFrame(), timing.Clone(), observer_->OnTimingUpdated(web_contents()->GetMainFrame(), timing.Clone(),
metadata.Clone(), new_features.Clone(), metadata.Clone(), new_features.Clone(),
std::vector<mojom::ResourceDataUpdatePtr>(), std::vector<mojom::ResourceDataUpdatePtr>(),
mojom::PageRenderDataPtr(base::in_place)); render_data.Clone());
// If sending the timing update caused the PageLoadMetricsUpdateDispatcher to // If sending the timing update caused the PageLoadMetricsUpdateDispatcher to
// schedule a buffering timer, then fire it now so metrics are dispatched to // schedule a buffering timer, then fire it now so metrics are dispatched to
// observers. // observers.
......
...@@ -50,12 +50,9 @@ class PageLoadMetricsObserverTester : public test::WeakMockTimerProvider { ...@@ -50,12 +50,9 @@ class PageLoadMetricsObserverTester : public test::WeakMockTimerProvider {
void SimulateTimingAndMetadataUpdate(const mojom::PageLoadTiming& timing, void SimulateTimingAndMetadataUpdate(const mojom::PageLoadTiming& timing,
const mojom::PageLoadMetadata& metadata); const mojom::PageLoadMetadata& metadata);
void SimulateFeaturesUpdate(const mojom::PageLoadFeatures& new_features); void SimulateFeaturesUpdate(const mojom::PageLoadFeatures& new_features);
void SimulatePageLoadTimingUpdate(
const mojom::PageLoadTiming& timing,
const mojom::PageLoadMetadata& metadata,
const mojom::PageLoadFeatures& new_features);
void SimulateResourceDataUseUpdate( void SimulateResourceDataUseUpdate(
const std::vector<mojom::ResourceDataUpdatePtr>& resources); const std::vector<mojom::ResourceDataUpdatePtr>& resources);
void SimulateRenderDataUpdate(const mojom::PageRenderData& render_data);
// Simulates a loaded resource. Main frame resources must specify a // Simulates a loaded resource. Main frame resources must specify a
// GlobalRequestID, using the SimulateLoadedResource() method that takes a // GlobalRequestID, using the SimulateLoadedResource() method that takes a
...@@ -83,6 +80,11 @@ class PageLoadMetricsObserverTester : public test::WeakMockTimerProvider { ...@@ -83,6 +80,11 @@ class PageLoadMetricsObserverTester : public test::WeakMockTimerProvider {
void RegisterObservers(PageLoadTracker* tracker); void RegisterObservers(PageLoadTracker* tracker);
private: private:
void SimulatePageLoadTimingUpdate(const mojom::PageLoadTiming& timing,
const mojom::PageLoadMetadata& metadata,
const mojom::PageLoadFeatures& new_features,
const mojom::PageRenderData& render_data);
content::WebContents* web_contents() const { return web_contents_; } content::WebContents* web_contents() const { return web_contents_; }
RegisterObserversCallback register_callback_; RegisterObserversCallback register_callback_;
......
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