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

Side by Side 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 unified diff | Download patch
OLDNEW
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include <stddef.h> 5 #include <stddef.h>
6 #include <stdint.h> 6 #include <stdint.h>
7 7
8 #include <map> 8 #include <map>
9 #include <utility> 9 #include <utility>
10 10
(...skipping 78 matching lines...) Expand 10 before | Expand all | Expand 10 after
89 } 89 }
90 90
91 private: 91 private:
92 static int g_next_route_id_; 92 static int g_next_route_id_;
93 int route_id_; 93 int route_id_;
94 94
95 UnitTestPrerenderManager* test_prerender_manager_; 95 UnitTestPrerenderManager* test_prerender_manager_;
96 FinalStatus expected_final_status_; 96 FinalStatus expected_final_status_;
97 }; 97 };
98 98
99 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.
100 : public prerender::PrerenderHandle::Observer {
101 public:
102 void OnPrerenderStart(PrerenderHandle* prerender_handle) override {}
103 void OnPrerenderStopLoading(PrerenderHandle* prerender_handle) override {}
104 void OnPrerenderDomContentLoaded(PrerenderHandle* prerender_handle) override {
105 }
106 void OnPrerenderStop(PrerenderHandle* prerender_handle) override {}
107 void OnPrerenderNetworkBytesChanged(
108 PrerenderHandle* prerender_handle) override {
109 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.
110 }
111
112 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.
113 };
114
99 int DummyPrerenderContents::g_next_route_id_ = 0; 115 int DummyPrerenderContents::g_next_route_id_ = 0;
100 116
101 const gfx::Size kSize(640, 480); 117 const gfx::Size kSize(640, 480);
102 118
103 const uint32_t kDefaultRelTypes = PrerenderRelTypePrerender; 119 const uint32_t kDefaultRelTypes = PrerenderRelTypePrerender;
104 120
105 base::SimpleTestTickClock* OverridePrerenderManagerTimeTicks( 121 base::SimpleTestTickClock* OverridePrerenderManagerTimeTicks(
106 PrerenderManager* prerender_manager) { 122 PrerenderManager* prerender_manager) {
107 auto tick_clock = base::MakeUnique<base::SimpleTestTickClock>(); 123 auto tick_clock = base::MakeUnique<base::SimpleTestTickClock>();
108 base::SimpleTestTickClock* tick_clock_ptr = tick_clock.get(); 124 base::SimpleTestTickClock* tick_clock_ptr = tick_clock.get();
(...skipping 1883 matching lines...) Expand 10 before | Expand all | Expand 10 after
1992 2008
1993 prerender_contents->SetPrerenderMode(PREFETCH_ONLY); 2009 prerender_contents->SetPrerenderMode(PREFETCH_ONLY);
1994 EXPECT_TRUE(prerender_contents->IsValidHttpMethod("GET")); 2010 EXPECT_TRUE(prerender_contents->IsValidHttpMethod("GET"));
1995 EXPECT_TRUE(prerender_contents->IsValidHttpMethod("HEAD")); 2011 EXPECT_TRUE(prerender_contents->IsValidHttpMethod("HEAD"));
1996 EXPECT_FALSE(prerender_contents->IsValidHttpMethod("OPTIONS")); 2012 EXPECT_FALSE(prerender_contents->IsValidHttpMethod("OPTIONS"));
1997 EXPECT_FALSE(prerender_contents->IsValidHttpMethod("POST")); 2013 EXPECT_FALSE(prerender_contents->IsValidHttpMethod("POST"));
1998 EXPECT_FALSE(prerender_contents->IsValidHttpMethod("TRACE")); 2014 EXPECT_FALSE(prerender_contents->IsValidHttpMethod("TRACE"));
1999 EXPECT_FALSE(prerender_contents->IsValidHttpMethod("WHATEVER")); 2015 EXPECT_FALSE(prerender_contents->IsValidHttpMethod("WHATEVER"));
2000 } 2016 }
2001 2017
2018 TEST_F(PrerenderTest, PrerenderContentsIncrementsByteCount) {
2019 GURL url("http://www.google.com/");
2020 DummyPrerenderContents* prerender_contents = nullptr;
2021 prerender_contents = prerender_manager()->CreateNextPrerenderContents(
2022 url, ORIGIN_OFFLINE, FINAL_STATUS_MANAGER_SHUTDOWN);
2023 std::unique_ptr<PrerenderHandle> prerender_handle =
2024 prerender_manager()->AddPrerenderForOffline(url, nullptr, kSize);
2025
2026 TestPrerenderHandleObserver observer;
2027 prerender_handle->SetObserver(&observer);
2028
2029 prerender_contents->AddNetworkBytes(12);
2030 EXPECT_TRUE(observer.network_bytes_changed);
2031 EXPECT_EQ(12, prerender_contents->network_bytes());
2032 }
2033
2002 } // namespace prerender 2034 } // namespace prerender
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698