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

Side by Side Diff: chrome/browser/predictors/resource_prefetcher_unittest.cc

Issue 2545943003: Accessing navigation information via webcontents (Closed)
Patch Set: Post-Review Modifications Created 4 years 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 2014 The Chromium Authors. All rights reserved. 1 // Copyright 2014 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 "chrome/browser/predictors/resource_prefetcher.h" 5 #include "chrome/browser/predictors/resource_prefetcher.h"
6 6
7 #include <stddef.h> 7 #include <stddef.h>
8 8
9 #include <memory> 9 #include <memory>
10 #include <string>
10 #include <utility> 11 #include <utility>
11 12
12 #include "base/macros.h" 13 #include "base/macros.h"
13 #include "base/memory/ref_counted.h" 14 #include "base/memory/ref_counted.h"
14 #include "base/message_loop/message_loop.h" 15 #include "base/message_loop/message_loop.h"
16 #include "chrome/browser/predictors/resource_prefetch_predictor_test_util.h"
15 #include "chrome/browser/predictors/resource_prefetcher_manager.h" 17 #include "chrome/browser/predictors/resource_prefetcher_manager.h"
16 #include "chrome/test/base/testing_profile.h" 18 #include "chrome/test/base/testing_profile.h"
17 #include "content/public/test/test_browser_thread.h" 19 #include "content/public/test/test_browser_thread.h"
18 #include "net/base/load_flags.h" 20 #include "net/base/load_flags.h"
19 #include "net/url_request/redirect_info.h" 21 #include "net/url_request/redirect_info.h"
20 #include "net/url_request/url_request.h" 22 #include "net/url_request/url_request.h"
21 #include "net/url_request/url_request_test_util.h" 23 #include "net/url_request/url_request_test_util.h"
22 #include "testing/gmock/include/gmock/gmock.h" 24 #include "testing/gmock/include/gmock/gmock.h"
23 #include "testing/gtest/include/gtest/gtest.h" 25 #include "testing/gtest/include/gtest/gtest.h"
24 26
(...skipping 118 matching lines...) Expand 10 before | Expand all | Expand 10 after
143 io_thread_(content::BrowserThread::IO, &loop_), 145 io_thread_(content::BrowserThread::IO, &loop_),
144 prefetcher_delegate_(&loop_) { 146 prefetcher_delegate_(&loop_) {
145 config_.max_prefetches_inflight_per_navigation = 5; 147 config_.max_prefetches_inflight_per_navigation = 5;
146 config_.max_prefetches_inflight_per_host_per_navigation = 2; 148 config_.max_prefetches_inflight_per_host_per_navigation = 2;
147 } 149 }
148 150
149 ResourcePrefetcherTest::~ResourcePrefetcherTest() { 151 ResourcePrefetcherTest::~ResourcePrefetcherTest() {
150 } 152 }
151 153
152 TEST_F(ResourcePrefetcherTest, TestPrefetcherFinishes) { 154 TEST_F(ResourcePrefetcherTest, TestPrefetcherFinishes) {
153 GURL main_frame_url("http://www.google.com"); 155 std::string main_frame_url_string("http://www.google.com");
156 GURL main_frame_url(main_frame_url_string);
Benoit L 2016/12/06 14:58:18 nit: You can use main_frame_url.spec() to avoid ad
ahemery 2016/12/06 15:17:38 Simplified
154 std::vector<GURL> urls = {GURL("http://www.google.com/resource1.html"), 157 std::vector<GURL> urls = {GURL("http://www.google.com/resource1.html"),
155 GURL("http://www.google.com/resource2.png"), 158 GURL("http://www.google.com/resource2.png"),
156 GURL("http://yahoo.com/resource1.png"), 159 GURL("http://yahoo.com/resource1.png"),
157 GURL("http://yahoo.com/resource2.png"), 160 GURL("http://yahoo.com/resource2.png"),
158 GURL("http://yahoo.com/resource3.png"), 161 GURL("http://yahoo.com/resource3.png"),
159 GURL("http://m.google.com/resource1.jpg"), 162 GURL("http://m.google.com/resource1.jpg"),
160 GURL("http://www.google.com/resource3.html"), 163 GURL("http://www.google.com/resource3.html"),
161 GURL("http://m.google.com/resource2.html"), 164 GURL("http://m.google.com/resource2.html"),
162 GURL("http://m.google.com/resource3.css"), 165 GURL("http://m.google.com/resource3.css"),
163 GURL("http://m.google.com/resource4.png"), 166 GURL("http://m.google.com/resource4.png"),
164 GURL("http://yahoo.com/resource4.png"), 167 GURL("http://yahoo.com/resource4.png"),
165 GURL("http://yahoo.com/resource5.png")}; 168 GURL("http://yahoo.com/resource5.png")};
166 169
167 NavigationID navigation_id(1, 2, main_frame_url); 170 NavigationID navigation_id = CreateNavigationID(1, 2, main_frame_url_string);
168 171
169 prefetcher_.reset(new TestResourcePrefetcher(&prefetcher_delegate_, config_, 172 prefetcher_.reset(new TestResourcePrefetcher(&prefetcher_delegate_, config_,
170 main_frame_url, urls)); 173 main_frame_url, urls));
171 174
172 // Starting the prefetcher maxes out the number of possible requests. 175 // Starting the prefetcher maxes out the number of possible requests.
173 AddStartUrlRequestExpectation("http://www.google.com/resource1.html"); 176 AddStartUrlRequestExpectation("http://www.google.com/resource1.html");
174 AddStartUrlRequestExpectation("http://www.google.com/resource2.png"); 177 AddStartUrlRequestExpectation("http://www.google.com/resource2.png");
175 AddStartUrlRequestExpectation("http://yahoo.com/resource1.png"); 178 AddStartUrlRequestExpectation("http://yahoo.com/resource1.png");
176 AddStartUrlRequestExpectation("http://yahoo.com/resource2.png"); 179 AddStartUrlRequestExpectation("http://yahoo.com/resource2.png");
177 AddStartUrlRequestExpectation("http://m.google.com/resource1.jpg"); 180 AddStartUrlRequestExpectation("http://m.google.com/resource1.jpg");
(...skipping 43 matching lines...) Expand 10 before | Expand all | Expand 10 after
221 224
222 // Expect the final call. 225 // Expect the final call.
223 EXPECT_CALL(prefetcher_delegate_, 226 EXPECT_CALL(prefetcher_delegate_,
224 ResourcePrefetcherFinished(Eq(prefetcher_.get()))); 227 ResourcePrefetcherFinished(Eq(prefetcher_.get())));
225 228
226 OnResponse("http://yahoo.com/resource3.png"); 229 OnResponse("http://yahoo.com/resource3.png");
227 CheckPrefetcherState(0, 0, 0); 230 CheckPrefetcherState(0, 0, 0);
228 } 231 }
229 232
230 TEST_F(ResourcePrefetcherTest, TestPrefetcherStopped) { 233 TEST_F(ResourcePrefetcherTest, TestPrefetcherStopped) {
231 GURL main_frame_url("http://www.google.com"); 234 std::string main_frame_url_string("http://www.google.com");
Benoit L 2016/12/06 14:58:18 nit: ditto.
235 GURL main_frame_url(main_frame_url_string);
232 std::vector<GURL> urls = {GURL("http://www.google.com/resource1.html"), 236 std::vector<GURL> urls = {GURL("http://www.google.com/resource1.html"),
233 GURL("http://www.google.com/resource2.png"), 237 GURL("http://www.google.com/resource2.png"),
234 GURL("http://yahoo.com/resource1.png"), 238 GURL("http://yahoo.com/resource1.png"),
235 GURL("http://yahoo.com/resource2.png"), 239 GURL("http://yahoo.com/resource2.png"),
236 GURL("http://yahoo.com/resource3.png"), 240 GURL("http://yahoo.com/resource3.png"),
237 GURL("http://m.google.com/resource1.jpg")}; 241 GURL("http://m.google.com/resource1.jpg")};
238 242
239 NavigationID navigation_id(1, 2, main_frame_url); 243 NavigationID navigation_id = CreateNavigationID(1, 2, main_frame_url_string);
240 244
241 prefetcher_.reset(new TestResourcePrefetcher(&prefetcher_delegate_, config_, 245 prefetcher_.reset(new TestResourcePrefetcher(&prefetcher_delegate_, config_,
242 main_frame_url, urls)); 246 main_frame_url, urls));
243 247
244 // Starting the prefetcher maxes out the number of possible requests. 248 // Starting the prefetcher maxes out the number of possible requests.
245 AddStartUrlRequestExpectation("http://www.google.com/resource1.html"); 249 AddStartUrlRequestExpectation("http://www.google.com/resource1.html");
246 AddStartUrlRequestExpectation("http://www.google.com/resource2.png"); 250 AddStartUrlRequestExpectation("http://www.google.com/resource2.png");
247 AddStartUrlRequestExpectation("http://yahoo.com/resource1.png"); 251 AddStartUrlRequestExpectation("http://yahoo.com/resource1.png");
248 AddStartUrlRequestExpectation("http://yahoo.com/resource2.png"); 252 AddStartUrlRequestExpectation("http://yahoo.com/resource2.png");
249 AddStartUrlRequestExpectation("http://m.google.com/resource1.jpg"); 253 AddStartUrlRequestExpectation("http://m.google.com/resource1.jpg");
(...skipping 17 matching lines...) Expand all
267 271
268 // Expect the final call. 272 // Expect the final call.
269 EXPECT_CALL(prefetcher_delegate_, 273 EXPECT_CALL(prefetcher_delegate_,
270 ResourcePrefetcherFinished(Eq(prefetcher_.get()))); 274 ResourcePrefetcherFinished(Eq(prefetcher_.get())));
271 275
272 OnResponse("http://m.google.com/resource1.jpg"); 276 OnResponse("http://m.google.com/resource1.jpg");
273 CheckPrefetcherState(0, 1, 0); 277 CheckPrefetcherState(0, 1, 0);
274 } 278 }
275 279
276 } // namespace predictors 280 } // namespace predictors
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698