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(
tester_->SimulateFeaturesUpdate(new_features);
}
void PageLoadMetricsObserverTestHarness::SimulateRenderDataUpdate(
const mojom::PageRenderData& render_data) {
tester_->SimulateRenderDataUpdate(render_data);
}
void PageLoadMetricsObserverTestHarness::SimulateLoadedResource(
const ExtraRequestCompleteInfo& info) {
tester_->SimulateLoadedResource(info, content::GlobalRequestID());
......
......@@ -79,12 +79,9 @@ class PageLoadMetricsObserverTestHarness
void SimulateTimingAndMetadataUpdate(const mojom::PageLoadTiming& timing,
const mojom::PageLoadMetadata& metadata);
void SimulateFeaturesUpdate(const mojom::PageLoadFeatures& new_features);
void SimulatePageLoadTimingUpdate(
const mojom::PageLoadTiming& timing,
const mojom::PageLoadMetadata& metadata,
const mojom::PageLoadFeatures& new_features);
void SimulateResourceDataUseUpdate(
const std::vector<mojom::ResourceDataUpdatePtr>& resources);
void SimulateRenderDataUpdate(const mojom::PageRenderData& render_data);
// Simulates a loaded resource. Main frame resources must specify a
// GlobalRequestID, using the SimulateLoadedResource() method that takes a
......
......@@ -68,29 +68,40 @@ PageLoadMetricsObserverTester::~PageLoadMetricsObserverTester() {}
void PageLoadMetricsObserverTester::SimulateTimingUpdate(
const mojom::PageLoadTiming& timing) {
SimulatePageLoadTimingUpdate(timing, mojom::PageLoadMetadata(),
mojom::PageLoadFeatures());
mojom::PageLoadFeatures(),
mojom::PageRenderData());
}
void PageLoadMetricsObserverTester::SimulateTimingAndMetadataUpdate(
const mojom::PageLoadTiming& timing,
const mojom::PageLoadMetadata& metadata) {
SimulatePageLoadTimingUpdate(timing, metadata, mojom::PageLoadFeatures());
SimulatePageLoadTimingUpdate(timing, metadata, mojom::PageLoadFeatures(),
mojom::PageRenderData());
}
void PageLoadMetricsObserverTester::SimulateFeaturesUpdate(
const mojom::PageLoadFeatures& new_features) {
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(
const mojom::PageLoadTiming& timing,
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(),
metadata.Clone(), new_features.Clone(),
std::vector<mojom::ResourceDataUpdatePtr>(),
mojom::PageRenderDataPtr(base::in_place));
render_data.Clone());
// If sending the timing update caused the PageLoadMetricsUpdateDispatcher to
// schedule a buffering timer, then fire it now so metrics are dispatched to
// observers.
......
......@@ -50,12 +50,9 @@ class PageLoadMetricsObserverTester : public test::WeakMockTimerProvider {
void SimulateTimingAndMetadataUpdate(const mojom::PageLoadTiming& timing,
const mojom::PageLoadMetadata& metadata);
void SimulateFeaturesUpdate(const mojom::PageLoadFeatures& new_features);
void SimulatePageLoadTimingUpdate(
const mojom::PageLoadTiming& timing,
const mojom::PageLoadMetadata& metadata,
const mojom::PageLoadFeatures& new_features);
void SimulateResourceDataUseUpdate(
const std::vector<mojom::ResourceDataUpdatePtr>& resources);
void SimulateRenderDataUpdate(const mojom::PageRenderData& render_data);
// Simulates a loaded resource. Main frame resources must specify a
// GlobalRequestID, using the SimulateLoadedResource() method that takes a
......@@ -83,6 +80,11 @@ class PageLoadMetricsObserverTester : public test::WeakMockTimerProvider {
void RegisterObservers(PageLoadTracker* tracker);
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_; }
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