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

Side by Side Diff: components/offline_pages/core/background/request_queue_store_unittest.cc

Issue 2489443002: Move all components/offline_pages/ files into component/offline_pages/core (Closed)
Patch Set: rebase 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 2016 The Chromium Authors. All rights reserved. 1 // Copyright 2016 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 "components/offline_pages/background/request_queue_store.h" 5 #include "components/offline_pages/core/background/request_queue_store.h"
6 6
7 #include <memory> 7 #include <memory>
8 8
9 #include "base/bind.h" 9 #include "base/bind.h"
10 #include "base/files/file_path.h" 10 #include "base/files/file_path.h"
11 #include "base/files/scoped_temp_dir.h" 11 #include "base/files/scoped_temp_dir.h"
12 #include "base/test/test_simple_task_runner.h" 12 #include "base/test/test_simple_task_runner.h"
13 #include "base/threading/thread_task_runner_handle.h" 13 #include "base/threading/thread_task_runner_handle.h"
14 #include "components/offline_pages/background/request_queue.h" 14 #include "components/offline_pages/core/background/request_queue.h"
15 #include "components/offline_pages/background/request_queue_in_memory_store.h" 15 #include "components/offline_pages/core/background/request_queue_in_memory_store .h"
16 #include "components/offline_pages/background/request_queue_store_sql.h" 16 #include "components/offline_pages/core/background/request_queue_store_sql.h"
17 #include "components/offline_pages/background/save_page_request.h" 17 #include "components/offline_pages/core/background/save_page_request.h"
18 #include "testing/gtest/include/gtest/gtest.h" 18 #include "testing/gtest/include/gtest/gtest.h"
19 19
20 namespace offline_pages { 20 namespace offline_pages {
21 21
22 using UpdateStatus = RequestQueueStore::UpdateStatus; 22 using UpdateStatus = RequestQueueStore::UpdateStatus;
23 23
24 namespace { 24 namespace {
25 const int64_t kRequestId = 42; 25 const int64_t kRequestId = 42;
26 const int64_t kRequestId2 = 44; 26 const int64_t kRequestId2 = 44;
27 const int64_t kRequestId3 = 47; 27 const int64_t kRequestId3 = 47;
(...skipping 246 matching lines...) Expand 10 before | Expand all | Expand 10 after
274 this->last_update_result()->item_statuses[1].second); 274 this->last_update_result()->item_statuses[1].second);
275 EXPECT_EQ(1UL, this->last_update_result()->updated_items.size()); 275 EXPECT_EQ(1UL, this->last_update_result()->updated_items.size());
276 EXPECT_EQ(request1, this->last_update_result()->updated_items.at(0)); 276 EXPECT_EQ(request1, this->last_update_result()->updated_items.at(0));
277 } 277 }
278 278
279 TYPED_TEST(RequestQueueStoreTest, AddRequest) { 279 TYPED_TEST(RequestQueueStoreTest, AddRequest) {
280 std::unique_ptr<RequestQueueStore> store(this->BuildStore()); 280 std::unique_ptr<RequestQueueStore> store(this->BuildStore());
281 this->InitializeStore(store.get()); 281 this->InitializeStore(store.get());
282 282
283 base::Time creation_time = base::Time::Now(); 283 base::Time creation_time = base::Time::Now();
284 SavePageRequest request( 284 SavePageRequest request(kRequestId, kUrl, kClientId, creation_time,
285 kRequestId, kUrl, kClientId, creation_time, kUserRequested); 285 kUserRequested);
286 286
287 store->AddRequest(request, 287 store->AddRequest(request,
288 base::Bind(&RequestQueueStoreTestBase::AddRequestDone, 288 base::Bind(&RequestQueueStoreTestBase::AddRequestDone,
289 base::Unretained(this))); 289 base::Unretained(this)));
290 ASSERT_EQ(ItemActionStatus::NOT_FOUND, this->last_add_status()); 290 ASSERT_EQ(ItemActionStatus::NOT_FOUND, this->last_add_status());
291 this->PumpLoop(); 291 this->PumpLoop();
292 ASSERT_EQ(ItemActionStatus::SUCCESS, this->last_add_status()); 292 ASSERT_EQ(ItemActionStatus::SUCCESS, this->last_add_status());
293 293
294 // Verifying get reqeust results after a request was added. 294 // Verifying get reqeust results after a request was added.
295 this->ClearResults(); 295 this->ClearResults();
(...skipping 22 matching lines...) Expand all
318 this->PumpLoop(); 318 this->PumpLoop();
319 ASSERT_EQ(LastResult::RESULT_TRUE, this->last_result()); 319 ASSERT_EQ(LastResult::RESULT_TRUE, this->last_result());
320 ASSERT_EQ(1ul, this->last_requests().size()); 320 ASSERT_EQ(1ul, this->last_requests().size());
321 } 321 }
322 322
323 TYPED_TEST(RequestQueueStoreTest, UpdateRequest) { 323 TYPED_TEST(RequestQueueStoreTest, UpdateRequest) {
324 std::unique_ptr<RequestQueueStore> store(this->BuildStore()); 324 std::unique_ptr<RequestQueueStore> store(this->BuildStore());
325 this->InitializeStore(store.get()); 325 this->InitializeStore(store.get());
326 326
327 base::Time creation_time = base::Time::Now(); 327 base::Time creation_time = base::Time::Now();
328 SavePageRequest original_request( 328 SavePageRequest original_request(kRequestId, kUrl, kClientId, creation_time,
329 kRequestId, kUrl, kClientId, creation_time, kUserRequested); 329 kUserRequested);
330 store->AddRequest(original_request, 330 store->AddRequest(original_request,
331 base::Bind(&RequestQueueStoreTestBase::AddRequestDone, 331 base::Bind(&RequestQueueStoreTestBase::AddRequestDone,
332 base::Unretained(this))); 332 base::Unretained(this)));
333 this->PumpLoop(); 333 this->PumpLoop();
334 this->ClearResults(); 334 this->ClearResults();
335 335
336 base::Time new_creation_time = 336 base::Time new_creation_time =
337 creation_time + base::TimeDelta::FromMinutes(1); 337 creation_time + base::TimeDelta::FromMinutes(1);
338 base::Time activation_time = creation_time + base::TimeDelta::FromHours(6); 338 base::Time activation_time = creation_time + base::TimeDelta::FromHours(6);
339 // Try updating an existing request. 339 // Try updating an existing request.
(...skipping 97 matching lines...) Expand 10 before | Expand all | Expand 10 after
437 EXPECT_EQ(ItemActionStatus::NOT_FOUND, 437 EXPECT_EQ(ItemActionStatus::NOT_FOUND,
438 this->last_update_result()->item_statuses[1].second); 438 this->last_update_result()->item_statuses[1].second);
439 EXPECT_EQ(0UL, this->last_update_result()->updated_items.size()); 439 EXPECT_EQ(0UL, this->last_update_result()->updated_items.size());
440 } 440 }
441 441
442 TYPED_TEST(RequestQueueStoreTest, ResetStore) { 442 TYPED_TEST(RequestQueueStoreTest, ResetStore) {
443 std::unique_ptr<RequestQueueStore> store(this->BuildStore()); 443 std::unique_ptr<RequestQueueStore> store(this->BuildStore());
444 this->InitializeStore(store.get()); 444 this->InitializeStore(store.get());
445 445
446 base::Time creation_time = base::Time::Now(); 446 base::Time creation_time = base::Time::Now();
447 SavePageRequest original_request( 447 SavePageRequest original_request(kRequestId, kUrl, kClientId, creation_time,
448 kRequestId, kUrl, kClientId, creation_time, kUserRequested); 448 kUserRequested);
449 store->AddRequest(original_request, 449 store->AddRequest(original_request,
450 base::Bind(&RequestQueueStoreTestBase::AddRequestDone, 450 base::Bind(&RequestQueueStoreTestBase::AddRequestDone,
451 base::Unretained(this))); 451 base::Unretained(this)));
452 this->PumpLoop(); 452 this->PumpLoop();
453 this->ClearResults(); 453 this->ClearResults();
454 454
455 store->Reset(base::Bind(&RequestQueueStoreTestBase::ResetDone, 455 store->Reset(base::Bind(&RequestQueueStoreTestBase::ResetDone,
456 base::Unretained(this))); 456 base::Unretained(this)));
457 ASSERT_EQ(LastResult::RESULT_NONE, this->last_result()); 457 ASSERT_EQ(LastResult::RESULT_NONE, this->last_result());
458 this->PumpLoop(); 458 this->PumpLoop();
(...skipping 11 matching lines...) Expand all
470 class RequestQueueStoreSQLTest 470 class RequestQueueStoreSQLTest
471 : public RequestQueueStoreTest<RequestQueueStoreSQLFactory> {}; 471 : public RequestQueueStoreTest<RequestQueueStoreSQLFactory> {};
472 472
473 // Makes sure that persistent DB is actually persisting requests across store 473 // Makes sure that persistent DB is actually persisting requests across store
474 // restarts. 474 // restarts.
475 TEST_F(RequestQueueStoreSQLTest, SaveCloseReopenRead) { 475 TEST_F(RequestQueueStoreSQLTest, SaveCloseReopenRead) {
476 std::unique_ptr<RequestQueueStore> store(BuildStore()); 476 std::unique_ptr<RequestQueueStore> store(BuildStore());
477 this->InitializeStore(store.get()); 477 this->InitializeStore(store.get());
478 478
479 base::Time creation_time = base::Time::Now(); 479 base::Time creation_time = base::Time::Now();
480 SavePageRequest original_request( 480 SavePageRequest original_request(kRequestId, kUrl, kClientId, creation_time,
481 kRequestId, kUrl, kClientId, creation_time, kUserRequested); 481 kUserRequested);
482 store->AddRequest(original_request, 482 store->AddRequest(original_request,
483 base::Bind(&RequestQueueStoreTestBase::AddRequestDone, 483 base::Bind(&RequestQueueStoreTestBase::AddRequestDone,
484 base::Unretained(this))); 484 base::Unretained(this)));
485 PumpLoop(); 485 PumpLoop();
486 ClearResults(); 486 ClearResults();
487 487
488 // Resets the store, using the same temp directory. The contents should be 488 // Resets the store, using the same temp directory. The contents should be
489 // intact. First reset is done separately to release DB lock. 489 // intact. First reset is done separately to release DB lock.
490 store.reset(); 490 store.reset();
491 store = BuildStore(); 491 store = BuildStore();
492 this->InitializeStore(store.get()); 492 this->InitializeStore(store.get());
493 493
494 store->GetRequests(base::Bind(&RequestQueueStoreTestBase::GetRequestsDone, 494 store->GetRequests(base::Bind(&RequestQueueStoreTestBase::GetRequestsDone,
495 base::Unretained(this))); 495 base::Unretained(this)));
496 ASSERT_EQ(LastResult::RESULT_NONE, this->last_result()); 496 ASSERT_EQ(LastResult::RESULT_NONE, this->last_result());
497 this->PumpLoop(); 497 this->PumpLoop();
498 ASSERT_EQ(LastResult::RESULT_TRUE, this->last_result()); 498 ASSERT_EQ(LastResult::RESULT_TRUE, this->last_result());
499 ASSERT_EQ(1ul, this->last_requests().size()); 499 ASSERT_EQ(1ul, this->last_requests().size());
500 ASSERT_TRUE(original_request == *(this->last_requests().at(0).get())); 500 ASSERT_TRUE(original_request == *(this->last_requests().at(0).get()));
501 } 501 }
502 502
503 } // offline_pages 503 } // offline_pages
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698