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

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

Issue 1551503002: Convert Pass()→std::move() in //chrome (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 4 years, 12 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 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"
6
5 #include <stddef.h> 7 #include <stddef.h>
8 #include <utility>
6 9
7 #include "base/macros.h" 10 #include "base/macros.h"
8 #include "base/memory/ref_counted.h" 11 #include "base/memory/ref_counted.h"
9 #include "base/memory/scoped_ptr.h" 12 #include "base/memory/scoped_ptr.h"
10 #include "base/message_loop/message_loop.h" 13 #include "base/message_loop/message_loop.h"
11 #include "chrome/browser/predictors/resource_prefetcher.h"
12 #include "chrome/browser/predictors/resource_prefetcher_manager.h" 14 #include "chrome/browser/predictors/resource_prefetcher_manager.h"
13 #include "chrome/test/base/testing_profile.h" 15 #include "chrome/test/base/testing_profile.h"
14 #include "content/public/test/test_browser_thread.h" 16 #include "content/public/test/test_browser_thread.h"
15 #include "net/base/load_flags.h" 17 #include "net/base/load_flags.h"
16 #include "net/url_request/redirect_info.h" 18 #include "net/url_request/redirect_info.h"
17 #include "net/url_request/url_request.h" 19 #include "net/url_request/url_request.h"
18 #include "net/url_request/url_request_test_util.h" 20 #include "net/url_request/url_request_test_util.h"
19 #include "testing/gmock/include/gmock/gmock.h" 21 #include "testing/gmock/include/gmock/gmock.h"
20 #include "testing/gtest/include/gtest/gtest.h" 22 #include "testing/gtest/include/gtest/gtest.h"
21 23
22 using testing::Eq; 24 using testing::Eq;
23 using testing::Property; 25 using testing::Property;
24 26
25 namespace predictors { 27 namespace predictors {
26 28
27 // Wrapper over the ResourcePrefetcher that stubs out the StartURLRequest call 29 // Wrapper over the ResourcePrefetcher that stubs out the StartURLRequest call
28 // since we do not want to do network fetches in this unittest. 30 // since we do not want to do network fetches in this unittest.
29 class TestResourcePrefetcher : public ResourcePrefetcher { 31 class TestResourcePrefetcher : public ResourcePrefetcher {
30 public: 32 public:
31 TestResourcePrefetcher(ResourcePrefetcher::Delegate* delegate, 33 TestResourcePrefetcher(ResourcePrefetcher::Delegate* delegate,
32 const ResourcePrefetchPredictorConfig& config, 34 const ResourcePrefetchPredictorConfig& config,
33 const NavigationID& navigation_id, 35 const NavigationID& navigation_id,
34 PrefetchKeyType key_type, 36 PrefetchKeyType key_type,
35 scoped_ptr<RequestVector> requests) 37 scoped_ptr<RequestVector> requests)
36 : ResourcePrefetcher(delegate, config, navigation_id, 38 : ResourcePrefetcher(delegate,
37 key_type, requests.Pass()) { } 39 config,
40 navigation_id,
41 key_type,
42 std::move(requests)) {}
38 43
39 ~TestResourcePrefetcher() override {} 44 ~TestResourcePrefetcher() override {}
40 45
41 MOCK_METHOD1(StartURLRequest, void(net::URLRequest* request)); 46 MOCK_METHOD1(StartURLRequest, void(net::URLRequest* request));
42 47
43 void ReadFullResponse(net::URLRequest* request) override { 48 void ReadFullResponse(net::URLRequest* request) override {
44 EXPECT_TRUE(request->load_flags() & net::LOAD_PREFETCH); 49 EXPECT_TRUE(request->load_flags() & net::LOAD_PREFETCH);
45 FinishRequest(request, Request::PREFETCH_STATUS_FROM_CACHE); 50 FinishRequest(request, Request::PREFETCH_STATUS_FROM_CACHE);
46 } 51 }
47 52
(...skipping 136 matching lines...) Expand 10 before | Expand all | Expand 10 after
184 "http://yahoo.com/resource5.png"))); 189 "http://yahoo.com/resource5.png")));
185 190
186 NavigationID navigation_id; 191 NavigationID navigation_id;
187 navigation_id.render_process_id = 1; 192 navigation_id.render_process_id = 1;
188 navigation_id.render_frame_id = 2; 193 navigation_id.render_frame_id = 2;
189 navigation_id.main_frame_url = GURL("http://www.google.com"); 194 navigation_id.main_frame_url = GURL("http://www.google.com");
190 195
191 // Needed later for comparison. 196 // Needed later for comparison.
192 ResourcePrefetcher::RequestVector* requests_ptr = requests.get(); 197 ResourcePrefetcher::RequestVector* requests_ptr = requests.get();
193 198
194 prefetcher_.reset(new TestResourcePrefetcher(&prefetcher_delegate_, 199 prefetcher_.reset(
195 config_, 200 new TestResourcePrefetcher(&prefetcher_delegate_, config_, navigation_id,
196 navigation_id, 201 PREFETCH_KEY_TYPE_URL, std::move(requests)));
197 PREFETCH_KEY_TYPE_URL,
198 requests.Pass()));
199 202
200 // Starting the prefetcher maxes out the number of possible requests. 203 // Starting the prefetcher maxes out the number of possible requests.
201 AddStartUrlRequestExpectation("http://www.google.com/resource1.html"); 204 AddStartUrlRequestExpectation("http://www.google.com/resource1.html");
202 AddStartUrlRequestExpectation("http://www.google.com/resource2.png"); 205 AddStartUrlRequestExpectation("http://www.google.com/resource2.png");
203 AddStartUrlRequestExpectation("http://yahoo.com/resource1.png"); 206 AddStartUrlRequestExpectation("http://yahoo.com/resource1.png");
204 AddStartUrlRequestExpectation("http://yahoo.com/resource2.png"); 207 AddStartUrlRequestExpectation("http://yahoo.com/resource2.png");
205 AddStartUrlRequestExpectation("http://m.google.com/resource1.jpg"); 208 AddStartUrlRequestExpectation("http://m.google.com/resource1.jpg");
206 209
207 prefetcher_->Start(); 210 prefetcher_->Start();
208 CheckPrefetcherState(5, 7, 3); 211 CheckPrefetcherState(5, 7, 3);
(...skipping 98 matching lines...) Expand 10 before | Expand all | Expand 10 after
307 "http://m.google.com/resource1.jpg"))); 310 "http://m.google.com/resource1.jpg")));
308 311
309 NavigationID navigation_id; 312 NavigationID navigation_id;
310 navigation_id.render_process_id = 1; 313 navigation_id.render_process_id = 1;
311 navigation_id.render_frame_id = 2; 314 navigation_id.render_frame_id = 2;
312 navigation_id.main_frame_url = GURL("http://www.google.com"); 315 navigation_id.main_frame_url = GURL("http://www.google.com");
313 316
314 // Needed later for comparison. 317 // Needed later for comparison.
315 ResourcePrefetcher::RequestVector* requests_ptr = requests.get(); 318 ResourcePrefetcher::RequestVector* requests_ptr = requests.get();
316 319
317 prefetcher_.reset(new TestResourcePrefetcher(&prefetcher_delegate_, 320 prefetcher_.reset(
318 config_, 321 new TestResourcePrefetcher(&prefetcher_delegate_, config_, navigation_id,
319 navigation_id, 322 PREFETCH_KEY_TYPE_HOST, std::move(requests)));
320 PREFETCH_KEY_TYPE_HOST,
321 requests.Pass()));
322 323
323 // Starting the prefetcher maxes out the number of possible requests. 324 // Starting the prefetcher maxes out the number of possible requests.
324 AddStartUrlRequestExpectation("http://www.google.com/resource1.html"); 325 AddStartUrlRequestExpectation("http://www.google.com/resource1.html");
325 AddStartUrlRequestExpectation("http://www.google.com/resource2.png"); 326 AddStartUrlRequestExpectation("http://www.google.com/resource2.png");
326 AddStartUrlRequestExpectation("http://yahoo.com/resource1.png"); 327 AddStartUrlRequestExpectation("http://yahoo.com/resource1.png");
327 AddStartUrlRequestExpectation("http://yahoo.com/resource2.png"); 328 AddStartUrlRequestExpectation("http://yahoo.com/resource2.png");
328 AddStartUrlRequestExpectation("http://m.google.com/resource1.jpg"); 329 AddStartUrlRequestExpectation("http://m.google.com/resource1.jpg");
329 330
330 prefetcher_->Start(); 331 prefetcher_->Start();
331 CheckPrefetcherState(5, 1, 3); 332 CheckPrefetcherState(5, 1, 3);
(...skipping 23 matching lines...) Expand all
355 // We need to delete requests_ptr here, though it looks to be managed by the 356 // We need to delete requests_ptr here, though it looks to be managed by the
356 // scoped_ptr requests. The scoped_ptr requests releases itself and the raw 357 // scoped_ptr requests. The scoped_ptr requests releases itself and the raw
357 // pointer requests_ptr is passed to ResourcePrefetcherFinished(). In the 358 // pointer requests_ptr is passed to ResourcePrefetcherFinished(). In the
358 // test, ResourcePrefetcherFinished() is a mock function and does not handle 359 // test, ResourcePrefetcherFinished() is a mock function and does not handle
359 // the raw pointer properly. In the real code, requests_ptr will eventually be 360 // the raw pointer properly. In the real code, requests_ptr will eventually be
360 // passed to and managed by ResourcePrefetchPredictor::Result::Result. 361 // passed to and managed by ResourcePrefetchPredictor::Result::Result.
361 delete requests_ptr; 362 delete requests_ptr;
362 } 363 }
363 364
364 } // namespace predictors 365 } // namespace predictors
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698