Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(941)

Unified Diff: chrome/browser/prerender/prerender_unittest.cc

Issue 2711693002: [Offline Pages] Make prerenderer notify us of network progress. (Closed)
Patch Set: Created 3 years, 10 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: chrome/browser/prerender/prerender_unittest.cc
diff --git a/chrome/browser/prerender/prerender_unittest.cc b/chrome/browser/prerender/prerender_unittest.cc
index be3bfa0e35b69dbc139614fb9a7b89b77756182d..86c038ae09f657679a9bb9fdc4e02df5ca3e8e6c 100644
--- a/chrome/browser/prerender/prerender_unittest.cc
+++ b/chrome/browser/prerender/prerender_unittest.cc
@@ -96,6 +96,22 @@ class DummyPrerenderContents : public PrerenderContents {
FinalStatus expected_final_status_;
};
+class TestPrerenderHandleObserver
pasko-google - do not use 2017/02/22 13:32:44 Can we have a more specialized name like NetworkBy
Dmitry Titov 2017/02/23 04:27:54 Done.
+ : public prerender::PrerenderHandle::Observer {
+ public:
+ void OnPrerenderStart(PrerenderHandle* prerender_handle) override {}
+ void OnPrerenderStopLoading(PrerenderHandle* prerender_handle) override {}
+ void OnPrerenderDomContentLoaded(PrerenderHandle* prerender_handle) override {
+ }
+ void OnPrerenderStop(PrerenderHandle* prerender_handle) override {}
+ void OnPrerenderNetworkBytesChanged(
+ PrerenderHandle* prerender_handle) override {
+ network_bytes_changed = true;
pasko-google - do not use 2017/02/22 13:32:44 even though it is a simple class, let's follow the
Dmitry Titov 2017/02/23 04:27:54 Done.
+ }
+
+ bool network_bytes_changed = false;
pasko-google - do not use 2017/02/22 13:32:44 member initializers outside constructors are allow
Dmitry Titov 2017/02/23 04:27:55 Done.
+};
+
int DummyPrerenderContents::g_next_route_id_ = 0;
const gfx::Size kSize(640, 480);
@@ -1999,4 +2015,20 @@ TEST_F(PrerenderTest, PrerenderContentsIsValidHttpMethod) {
EXPECT_FALSE(prerender_contents->IsValidHttpMethod("WHATEVER"));
}
+TEST_F(PrerenderTest, PrerenderContentsIncrementsByteCount) {
+ GURL url("http://www.google.com/");
+ DummyPrerenderContents* prerender_contents = nullptr;
+ prerender_contents = prerender_manager()->CreateNextPrerenderContents(
+ url, ORIGIN_OFFLINE, FINAL_STATUS_MANAGER_SHUTDOWN);
+ std::unique_ptr<PrerenderHandle> prerender_handle =
+ prerender_manager()->AddPrerenderForOffline(url, nullptr, kSize);
+
+ TestPrerenderHandleObserver observer;
+ prerender_handle->SetObserver(&observer);
+
+ prerender_contents->AddNetworkBytes(12);
+ EXPECT_TRUE(observer.network_bytes_changed);
+ EXPECT_EQ(12, prerender_contents->network_bytes());
+}
+
} // namespace prerender

Powered by Google App Engine
This is Rietveld 408576698