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

Side by Side Diff: chrome/browser/history/history_backend_unittest.cc

Issue 16296002: Update chrome/ to use scoped_refptr<T>::get() rather than implicit "operator T*" (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Rebased Created 7 years, 6 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 | Annotate | Revision Log
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 <algorithm> 5 #include <algorithm>
6 #include <set> 6 #include <set>
7 #include <vector> 7 #include <vector>
8 8
9 #include "base/basictypes.h" 9 #include "base/basictypes.h"
10 #include "base/bind.h" 10 #include "base/bind.h"
(...skipping 369 matching lines...) Expand 10 before | Expand all | Expand 10 after
380 &bookmark_model_); 380 &bookmark_model_);
381 backend_->Init(std::string(), false); 381 backend_->Init(std::string(), false);
382 } 382 }
383 383
384 bool loaded_; 384 bool loaded_;
385 385
386 private: 386 private:
387 friend class HistoryBackendTestDelegate; 387 friend class HistoryBackendTestDelegate;
388 388
389 virtual void TearDown() { 389 virtual void TearDown() {
390 if (backend_) 390 if (backend_.get())
391 backend_->Closing(); 391 backend_->Closing();
392 backend_ = NULL; 392 backend_ = NULL;
393 mem_backend_.reset(); 393 mem_backend_.reset();
394 file_util::Delete(test_dir_, true); 394 file_util::Delete(test_dir_, true);
395 } 395 }
396 396
397 void SetInMemoryBackend(int backend_id, InMemoryHistoryBackend* backend) { 397 void SetInMemoryBackend(int backend_id, InMemoryHistoryBackend* backend) {
398 mem_backend_.reset(backend); 398 mem_backend_.reset(backend);
399 } 399 }
400 400
(...skipping 1939 matching lines...) Expand 10 before | Expand all | Expand 10 after
2340 kTypedTransition, 2340 kTypedTransition,
2341 tested_time - half_an_hour); 2341 tested_time - half_an_hour);
2342 backend_->Commit(); 2342 backend_->Commit();
2343 2343
2344 scoped_refptr<QueryFilteredURLsRequest> request1 = 2344 scoped_refptr<QueryFilteredURLsRequest> request1 =
2345 new history::QueryFilteredURLsRequest( 2345 new history::QueryFilteredURLsRequest(
2346 base::Bind(&HistoryBackendTest::OnQueryFiltered, 2346 base::Bind(&HistoryBackendTest::OnQueryFiltered,
2347 base::Unretained(static_cast<HistoryBackendTest*>(this)))); 2347 base::Unretained(static_cast<HistoryBackendTest*>(this))));
2348 HistoryBackendCancelableRequest cancellable_request; 2348 HistoryBackendCancelableRequest cancellable_request;
2349 cancellable_request.MockScheduleOfRequest<QueryFilteredURLsRequest>( 2349 cancellable_request.MockScheduleOfRequest<QueryFilteredURLsRequest>(
2350 request1); 2350 request1.get());
2351 2351
2352 VisitFilter filter; 2352 VisitFilter filter;
2353 // Time limit is |tested_time| +/- 45 min. 2353 // Time limit is |tested_time| +/- 45 min.
2354 base::TimeDelta three_quarters_of_an_hour = base::TimeDelta::FromMinutes(45); 2354 base::TimeDelta three_quarters_of_an_hour = base::TimeDelta::FromMinutes(45);
2355 filter.SetFilterTime(tested_time); 2355 filter.SetFilterTime(tested_time);
2356 filter.SetFilterWidth(three_quarters_of_an_hour); 2356 filter.SetFilterWidth(three_quarters_of_an_hour);
2357 backend_->QueryFilteredURLs(request1, 100, filter, false); 2357 backend_->QueryFilteredURLs(request1, 100, filter, false);
2358 2358
2359 ASSERT_EQ(4U, get_filtered_list().size()); 2359 ASSERT_EQ(4U, get_filtered_list().size());
2360 EXPECT_EQ(std::string(google), get_filtered_list()[0].url.spec()); 2360 EXPECT_EQ(std::string(google), get_filtered_list()[0].url.spec());
2361 EXPECT_EQ(std::string(yahoo_sports_soccer), 2361 EXPECT_EQ(std::string(yahoo_sports_soccer),
2362 get_filtered_list()[1].url.spec()); 2362 get_filtered_list()[1].url.spec());
2363 EXPECT_EQ(std::string(yahoo), get_filtered_list()[2].url.spec()); 2363 EXPECT_EQ(std::string(yahoo), get_filtered_list()[2].url.spec());
2364 EXPECT_EQ(std::string(yahoo_sports), 2364 EXPECT_EQ(std::string(yahoo_sports),
2365 get_filtered_list()[3].url.spec()); 2365 get_filtered_list()[3].url.spec());
2366 2366
2367 // Time limit is between |tested_time| and |tested_time| + 2 hours. 2367 // Time limit is between |tested_time| and |tested_time| + 2 hours.
2368 scoped_refptr<QueryFilteredURLsRequest> request2 = 2368 scoped_refptr<QueryFilteredURLsRequest> request2 =
2369 new history::QueryFilteredURLsRequest( 2369 new history::QueryFilteredURLsRequest(
2370 base::Bind(&HistoryBackendTest::OnQueryFiltered, 2370 base::Bind(&HistoryBackendTest::OnQueryFiltered,
2371 base::Unretained(static_cast<HistoryBackendTest*>(this)))); 2371 base::Unretained(static_cast<HistoryBackendTest*>(this))));
2372 cancellable_request.MockScheduleOfRequest<QueryFilteredURLsRequest>( 2372 cancellable_request.MockScheduleOfRequest<QueryFilteredURLsRequest>(
2373 request2); 2373 request2.get());
2374 filter.SetFilterTime(tested_time + one_hour); 2374 filter.SetFilterTime(tested_time + one_hour);
2375 filter.SetFilterWidth(one_hour); 2375 filter.SetFilterWidth(one_hour);
2376 backend_->QueryFilteredURLs(request2, 100, filter, false); 2376 backend_->QueryFilteredURLs(request2, 100, filter, false);
2377 2377
2378 ASSERT_EQ(3U, get_filtered_list().size()); 2378 ASSERT_EQ(3U, get_filtered_list().size());
2379 EXPECT_EQ(std::string(google), get_filtered_list()[0].url.spec()); 2379 EXPECT_EQ(std::string(google), get_filtered_list()[0].url.spec());
2380 EXPECT_EQ(std::string(yahoo), get_filtered_list()[1].url.spec()); 2380 EXPECT_EQ(std::string(yahoo), get_filtered_list()[1].url.spec());
2381 EXPECT_EQ(std::string(yahoo_sports), get_filtered_list()[2].url.spec()); 2381 EXPECT_EQ(std::string(yahoo_sports), get_filtered_list()[2].url.spec());
2382 2382
2383 // Time limit is between |tested_time| - 2 hours and |tested_time|. 2383 // Time limit is between |tested_time| - 2 hours and |tested_time|.
2384 scoped_refptr<QueryFilteredURLsRequest> request3 = 2384 scoped_refptr<QueryFilteredURLsRequest> request3 =
2385 new history::QueryFilteredURLsRequest( 2385 new history::QueryFilteredURLsRequest(
2386 base::Bind(&HistoryBackendTest::OnQueryFiltered, 2386 base::Bind(&HistoryBackendTest::OnQueryFiltered,
2387 base::Unretained(static_cast<HistoryBackendTest*>(this)))); 2387 base::Unretained(static_cast<HistoryBackendTest*>(this))));
2388 cancellable_request.MockScheduleOfRequest<QueryFilteredURLsRequest>( 2388 cancellable_request.MockScheduleOfRequest<QueryFilteredURLsRequest>(
2389 request3); 2389 request3.get());
2390 filter.SetFilterTime(tested_time - one_hour); 2390 filter.SetFilterTime(tested_time - one_hour);
2391 filter.SetFilterWidth(one_hour); 2391 filter.SetFilterWidth(one_hour);
2392 backend_->QueryFilteredURLs(request3, 100, filter, false); 2392 backend_->QueryFilteredURLs(request3, 100, filter, false);
2393 2393
2394 ASSERT_EQ(3U, get_filtered_list().size()); 2394 ASSERT_EQ(3U, get_filtered_list().size());
2395 EXPECT_EQ(std::string(google), get_filtered_list()[0].url.spec()); 2395 EXPECT_EQ(std::string(google), get_filtered_list()[0].url.spec());
2396 EXPECT_EQ(std::string(yahoo_sports_soccer), 2396 EXPECT_EQ(std::string(yahoo_sports_soccer),
2397 get_filtered_list()[1].url.spec()); 2397 get_filtered_list()[1].url.spec());
2398 EXPECT_EQ(std::string(yahoo_sports), get_filtered_list()[2].url.spec()); 2398 EXPECT_EQ(std::string(yahoo_sports), get_filtered_list()[2].url.spec());
2399 2399
2400 filter.ClearFilters(); 2400 filter.ClearFilters();
2401 base::Time::Exploded exploded_time; 2401 base::Time::Exploded exploded_time;
2402 tested_time.LocalExplode(&exploded_time); 2402 tested_time.LocalExplode(&exploded_time);
2403 2403
2404 // Today. 2404 // Today.
2405 scoped_refptr<QueryFilteredURLsRequest> request4 = 2405 scoped_refptr<QueryFilteredURLsRequest> request4 =
2406 new history::QueryFilteredURLsRequest( 2406 new history::QueryFilteredURLsRequest(
2407 base::Bind(&HistoryBackendTest::OnQueryFiltered, 2407 base::Bind(&HistoryBackendTest::OnQueryFiltered,
2408 base::Unretained(static_cast<HistoryBackendTest*>(this)))); 2408 base::Unretained(static_cast<HistoryBackendTest*>(this))));
2409 cancellable_request.MockScheduleOfRequest<QueryFilteredURLsRequest>( 2409 cancellable_request.MockScheduleOfRequest<QueryFilteredURLsRequest>(
2410 request4); 2410 request4.get());
2411 filter.SetFilterTime(tested_time); 2411 filter.SetFilterTime(tested_time);
2412 filter.SetDayOfTheWeekFilter(static_cast<int>(exploded_time.day_of_week)); 2412 filter.SetDayOfTheWeekFilter(static_cast<int>(exploded_time.day_of_week));
2413 backend_->QueryFilteredURLs(request4, 100, filter, false); 2413 backend_->QueryFilteredURLs(request4, 100, filter, false);
2414 2414
2415 ASSERT_EQ(2U, get_filtered_list().size()); 2415 ASSERT_EQ(2U, get_filtered_list().size());
2416 EXPECT_EQ(std::string(google), get_filtered_list()[0].url.spec()); 2416 EXPECT_EQ(std::string(google), get_filtered_list()[0].url.spec());
2417 EXPECT_EQ(std::string(yahoo_sports_soccer), 2417 EXPECT_EQ(std::string(yahoo_sports_soccer),
2418 get_filtered_list()[1].url.spec()); 2418 get_filtered_list()[1].url.spec());
2419 2419
2420 // Today + time limit - only yahoo_sports_soccer should fit. 2420 // Today + time limit - only yahoo_sports_soccer should fit.
2421 scoped_refptr<QueryFilteredURLsRequest> request5 = 2421 scoped_refptr<QueryFilteredURLsRequest> request5 =
2422 new history::QueryFilteredURLsRequest( 2422 new history::QueryFilteredURLsRequest(
2423 base::Bind(&HistoryBackendTest::OnQueryFiltered, 2423 base::Bind(&HistoryBackendTest::OnQueryFiltered,
2424 base::Unretained(static_cast<HistoryBackendTest*>(this)))); 2424 base::Unretained(static_cast<HistoryBackendTest*>(this))));
2425 cancellable_request.MockScheduleOfRequest<QueryFilteredURLsRequest>( 2425 cancellable_request.MockScheduleOfRequest<QueryFilteredURLsRequest>(
2426 request5); 2426 request5.get());
2427 filter.SetFilterTime(tested_time - base::TimeDelta::FromMinutes(40)); 2427 filter.SetFilterTime(tested_time - base::TimeDelta::FromMinutes(40));
2428 filter.SetFilterWidth(base::TimeDelta::FromMinutes(20)); 2428 filter.SetFilterWidth(base::TimeDelta::FromMinutes(20));
2429 backend_->QueryFilteredURLs(request5, 100, filter, false); 2429 backend_->QueryFilteredURLs(request5, 100, filter, false);
2430 2430
2431 ASSERT_EQ(1U, get_filtered_list().size()); 2431 ASSERT_EQ(1U, get_filtered_list().size());
2432 EXPECT_EQ(std::string(yahoo_sports_soccer), 2432 EXPECT_EQ(std::string(yahoo_sports_soccer),
2433 get_filtered_list()[0].url.spec()); 2433 get_filtered_list()[0].url.spec());
2434 2434
2435 // Make sure we get debug data if we request it. 2435 // Make sure we get debug data if we request it.
2436 scoped_refptr<QueryFilteredURLsRequest> request6 = 2436 scoped_refptr<QueryFilteredURLsRequest> request6 =
2437 new history::QueryFilteredURLsRequest( 2437 new history::QueryFilteredURLsRequest(
2438 base::Bind(&HistoryBackendTest::OnQueryFiltered, 2438 base::Bind(&HistoryBackendTest::OnQueryFiltered,
2439 base::Unretained(static_cast<HistoryBackendTest*>(this)))); 2439 base::Unretained(static_cast<HistoryBackendTest*>(this))));
2440 cancellable_request.MockScheduleOfRequest<QueryFilteredURLsRequest>( 2440 cancellable_request.MockScheduleOfRequest<QueryFilteredURLsRequest>(
2441 request6); 2441 request6.get());
2442 filter.SetFilterTime(tested_time); 2442 filter.SetFilterTime(tested_time);
2443 filter.SetFilterWidth(one_hour * 2); 2443 filter.SetFilterWidth(one_hour * 2);
2444 backend_->QueryFilteredURLs(request6, 100, filter, true); 2444 backend_->QueryFilteredURLs(request6, 100, filter, true);
2445 2445
2446 // If the SegmentID is used by QueryFilteredURLs when generating the debug 2446 // If the SegmentID is used by QueryFilteredURLs when generating the debug
2447 // data instead of the URLID, the |total_visits| for the |yahoo_sports_soccer| 2447 // data instead of the URLID, the |total_visits| for the |yahoo_sports_soccer|
2448 // entry will be zero instead of 1. 2448 // entry will be zero instead of 1.
2449 ASSERT_GE(get_filtered_list().size(), 2U); 2449 ASSERT_GE(get_filtered_list().size(), 2U);
2450 EXPECT_EQ(std::string(google), get_filtered_list()[0].url.spec()); 2450 EXPECT_EQ(std::string(google), get_filtered_list()[0].url.spec());
2451 EXPECT_EQ(std::string(yahoo_sports_soccer), 2451 EXPECT_EQ(std::string(yahoo_sports_soccer),
(...skipping 357 matching lines...) Expand 10 before | Expand all | Expand 10 after
2809 service->AddPage( 2809 service->AddPage(
2810 url, base::Time::Now(), NULL, 1, GURL(), RedirectList(), 2810 url, base::Time::Now(), NULL, 1, GURL(), RedirectList(),
2811 content::PAGE_TRANSITION_TYPED, SOURCE_BROWSED, false); 2811 content::PAGE_TRANSITION_TYPED, SOURCE_BROWSED, false);
2812 2812
2813 // This won't actually delete the URL, rather it'll empty out the visits. 2813 // This won't actually delete the URL, rather it'll empty out the visits.
2814 // This triggers blocking on the BookmarkModel. 2814 // This triggers blocking on the BookmarkModel.
2815 service->DeleteURL(url); 2815 service->DeleteURL(url);
2816 } 2816 }
2817 2817
2818 } // namespace history 2818 } // namespace history
OLDNEW
« no previous file with comments | « chrome/browser/history/history_backend.cc ('k') | chrome/browser/history/history_browsertest.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698