Chromium Code Reviews| Index: components/offline_pages/background/request_queue_in_memory_store_unittest.cc |
| diff --git a/components/offline_pages/background/request_queue_in_memory_store_unittest.cc b/components/offline_pages/background/request_queue_in_memory_store_unittest.cc |
| deleted file mode 100644 |
| index de58a29ac1abc829f64912d041e0eb3c716bc4ea..0000000000000000000000000000000000000000 |
| --- a/components/offline_pages/background/request_queue_in_memory_store_unittest.cc |
| +++ /dev/null |
| @@ -1,242 +0,0 @@ |
| -// Copyright 2016 The Chromium Authors. All rights reserved. |
| -// Use of this source code is governed by a BSD-style license that can be |
| -// found in the LICENSE file. |
| - |
| -#include "components/offline_pages/background/request_queue_in_memory_store.h" |
|
Pete Williamson
2016/06/14 21:54:45
Maybe we should keep this in addition to the sql u
fgorski
2016/06/14 22:38:05
we are.
|
| - |
| -#include <memory> |
| - |
| -#include "base/bind.h" |
| -#include "base/test/test_simple_task_runner.h" |
| -#include "base/threading/thread_task_runner_handle.h" |
| -#include "components/offline_pages/background/request_queue_store.h" |
| -#include "components/offline_pages/background/save_page_request.h" |
| -#include "testing/gtest/include/gtest/gtest.h" |
| - |
| -namespace offline_pages { |
| - |
| -using UpdateStatus = RequestQueueStore::UpdateStatus; |
| - |
| -namespace { |
| -const int64_t kRequestId = 42; |
| -const GURL kUrl("http://example.com"); |
| -const ClientId kClientId("bookmark", "1234"); |
| - |
| -bool operator==(const SavePageRequest& lhs, const SavePageRequest& rhs) { |
| - return lhs.request_id() == rhs.request_id() && lhs.url() == rhs.url() && |
| - lhs.client_id() == rhs.client_id() && |
| - lhs.creation_time() == rhs.creation_time() && |
| - lhs.activation_time() == rhs.activation_time() && |
| - lhs.attempt_count() == rhs.attempt_count() && |
| - lhs.last_attempt_time() == rhs.last_attempt_time(); |
| -} |
| - |
| -} // namespace |
| - |
| -class RequestQueueInMemoryStoreTest : public testing::Test { |
| - public: |
| - enum class LastResult { |
| - RESULT_NONE, |
| - RESULT_FALSE, |
| - RESULT_TRUE, |
| - }; |
| - |
| - RequestQueueInMemoryStoreTest(); |
| - |
| - // Test overrides. |
| - void SetUp() override; |
| - |
| - RequestQueueStore* store() { return store_.get(); } |
| - |
| - void PumpLoop(); |
| - void ResetResults(); |
| - |
| - // Callback used for get requests. |
| - void GetRequestsDone(bool result, |
| - const std::vector<SavePageRequest>& requests); |
| - // Callback used for add/update request. |
| - void AddOrUpdateDone(UpdateStatus result); |
| - // Callback used for remove requests. |
| - void RemoveDone(bool result, int count); |
| - // Callback used for reset. |
| - void ResetDone(bool result); |
| - |
| - LastResult last_result() const { return last_result_; } |
| - |
| - UpdateStatus last_update_status() const { return last_update_status_; } |
| - |
| - int last_remove_count() const { return last_remove_count_; } |
| - |
| - const std::vector<SavePageRequest>& last_requests() const { |
| - return last_requests_; |
| - } |
| - |
| - private: |
| - std::unique_ptr<RequestQueueInMemoryStore> store_; |
| - LastResult last_result_; |
| - UpdateStatus last_update_status_; |
| - int last_remove_count_; |
| - std::vector<SavePageRequest> last_requests_; |
| - scoped_refptr<base::TestSimpleTaskRunner> task_runner_; |
| - base::ThreadTaskRunnerHandle task_runner_handle_; |
| -}; |
| - |
| -RequestQueueInMemoryStoreTest::RequestQueueInMemoryStoreTest() |
| - : last_result_(LastResult::RESULT_NONE), |
| - last_update_status_(UpdateStatus::FAILED), |
| - last_remove_count_(0), |
| - task_runner_(new base::TestSimpleTaskRunner), |
| - task_runner_handle_(task_runner_) {} |
| - |
| -void RequestQueueInMemoryStoreTest::SetUp() { |
| - store_.reset(new RequestQueueInMemoryStore()); |
| -} |
| - |
| -void RequestQueueInMemoryStoreTest::PumpLoop() { |
| - task_runner_->RunUntilIdle(); |
| -} |
| - |
| -void RequestQueueInMemoryStoreTest::ResetResults() { |
| - last_result_ = LastResult::RESULT_NONE; |
| - last_update_status_ = UpdateStatus::FAILED; |
| - last_remove_count_ = 0; |
| - last_requests_.clear(); |
| -} |
| - |
| -void RequestQueueInMemoryStoreTest::GetRequestsDone( |
| - bool result, |
| - const std::vector<SavePageRequest>& requests) { |
| - last_result_ = result ? LastResult::RESULT_TRUE : LastResult::RESULT_FALSE; |
| - last_requests_ = requests; |
| -} |
| - |
| -void RequestQueueInMemoryStoreTest::AddOrUpdateDone(UpdateStatus status) { |
| - last_update_status_ = status; |
| -} |
| - |
| -void RequestQueueInMemoryStoreTest::RemoveDone(bool result, int count) { |
| - last_result_ = result ? LastResult::RESULT_TRUE : LastResult::RESULT_FALSE; |
| - last_remove_count_ = count; |
| -} |
| - |
| -void RequestQueueInMemoryStoreTest::ResetDone(bool result) { |
| - last_result_ = result ? LastResult::RESULT_TRUE : LastResult::RESULT_FALSE; |
| -} |
| - |
| -TEST_F(RequestQueueInMemoryStoreTest, GetRequestsEmpty) { |
| - store()->GetRequests(base::Bind( |
| - &RequestQueueInMemoryStoreTest::GetRequestsDone, base::Unretained(this))); |
| - ASSERT_EQ(LastResult::RESULT_NONE, last_result()); |
| - PumpLoop(); |
| - ASSERT_EQ(LastResult::RESULT_TRUE, last_result()); |
| - ASSERT_TRUE(last_requests().empty()); |
| -} |
| - |
| -TEST_F(RequestQueueInMemoryStoreTest, AddRequest) { |
| - base::Time creation_time = base::Time::Now(); |
| - SavePageRequest request(kRequestId, kUrl, kClientId, creation_time); |
| - |
| - store()->AddOrUpdateRequest( |
| - request, base::Bind(&RequestQueueInMemoryStoreTest::AddOrUpdateDone, |
| - base::Unretained(this))); |
| - ASSERT_EQ(UpdateStatus::FAILED, last_update_status()); |
| - PumpLoop(); |
| - ASSERT_EQ(UpdateStatus::ADDED, last_update_status()); |
| - |
| - // Verifying get reqeust results after a request was added. |
| - ResetResults(); |
| - store()->GetRequests(base::Bind( |
| - &RequestQueueInMemoryStoreTest::GetRequestsDone, base::Unretained(this))); |
| - ASSERT_EQ(LastResult::RESULT_NONE, last_result()); |
| - PumpLoop(); |
| - ASSERT_EQ(LastResult::RESULT_TRUE, last_result()); |
| - ASSERT_EQ(1ul, last_requests().size()); |
| - ASSERT_TRUE(request == last_requests()[0]); |
| -} |
| - |
| -TEST_F(RequestQueueInMemoryStoreTest, UpdateRequest) { |
| - base::Time creation_time = base::Time::Now(); |
| - SavePageRequest original_request(kRequestId, kUrl, kClientId, creation_time); |
| - store()->AddOrUpdateRequest( |
| - original_request, |
| - base::Bind(&RequestQueueInMemoryStoreTest::AddOrUpdateDone, |
| - base::Unretained(this))); |
| - PumpLoop(); |
| - ResetResults(); |
| - |
| - base::Time new_creation_time = |
| - creation_time + base::TimeDelta::FromMinutes(1); |
| - base::Time activation_time = creation_time + base::TimeDelta::FromHours(6); |
| - SavePageRequest updated_request(kRequestId, kUrl, kClientId, |
| - new_creation_time, activation_time); |
| - store()->AddOrUpdateRequest( |
| - updated_request, |
| - base::Bind(&RequestQueueInMemoryStoreTest::AddOrUpdateDone, |
| - base::Unretained(this))); |
| - ASSERT_EQ(UpdateStatus::FAILED, last_update_status()); |
| - PumpLoop(); |
| - ASSERT_EQ(UpdateStatus::UPDATED, last_update_status()); |
| - |
| - // Verifying get reqeust results after a request was updated. |
| - ResetResults(); |
| - store()->GetRequests(base::Bind( |
| - &RequestQueueInMemoryStoreTest::GetRequestsDone, base::Unretained(this))); |
| - ASSERT_EQ(LastResult::RESULT_NONE, last_result()); |
| - PumpLoop(); |
| - ASSERT_EQ(LastResult::RESULT_TRUE, last_result()); |
| - ASSERT_EQ(1ul, last_requests().size()); |
| - ASSERT_TRUE(updated_request == last_requests()[0]); |
| -} |
| - |
| -TEST_F(RequestQueueInMemoryStoreTest, RemoveRequest) { |
| - base::Time creation_time = base::Time::Now(); |
| - SavePageRequest original_request(kRequestId, kUrl, kClientId, creation_time); |
| - store()->AddOrUpdateRequest( |
| - original_request, |
| - base::Bind(&RequestQueueInMemoryStoreTest::AddOrUpdateDone, |
| - base::Unretained(this))); |
| - PumpLoop(); |
| - ResetResults(); |
| - |
| - std::vector<int64_t> request_ids{kRequestId}; |
| - store()->RemoveRequests(request_ids, |
| - base::Bind(&RequestQueueInMemoryStoreTest::RemoveDone, |
| - base::Unretained(this))); |
| - ASSERT_EQ(LastResult::RESULT_NONE, last_result()); |
| - ASSERT_EQ(0, last_remove_count()); |
| - PumpLoop(); |
| - ASSERT_EQ(LastResult::RESULT_TRUE, last_result()); |
| - ASSERT_EQ(1, last_remove_count()); |
| - ASSERT_EQ(0ul, last_requests().size()); |
| - ResetResults(); |
| - |
| - // Removing a request that is missing fails. |
| - store()->RemoveRequests(request_ids, |
| - base::Bind(&RequestQueueInMemoryStoreTest::RemoveDone, |
| - base::Unretained(this))); |
| - ASSERT_EQ(LastResult::RESULT_NONE, last_result()); |
| - ASSERT_EQ(0, last_remove_count()); |
| - PumpLoop(); |
| - ASSERT_EQ(LastResult::RESULT_FALSE, last_result()); |
| - ASSERT_EQ(0, last_remove_count()); |
| -} |
| - |
| -TEST_F(RequestQueueInMemoryStoreTest, ResetStore) { |
| - base::Time creation_time = base::Time::Now(); |
| - SavePageRequest original_request(kRequestId, kUrl, kClientId, creation_time); |
| - store()->AddOrUpdateRequest( |
| - original_request, |
| - base::Bind(&RequestQueueInMemoryStoreTest::AddOrUpdateDone, |
| - base::Unretained(this))); |
| - PumpLoop(); |
| - ResetResults(); |
| - |
| - store()->Reset(base::Bind(&RequestQueueInMemoryStoreTest::ResetDone, |
| - base::Unretained(this))); |
| - ASSERT_EQ(LastResult::RESULT_NONE, last_result()); |
| - PumpLoop(); |
| - ASSERT_EQ(LastResult::RESULT_TRUE, last_result()); |
| - ASSERT_EQ(0ul, last_requests().size()); |
| -} |
| - |
| -} // offline_pages |