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

Unified Diff: components/offline_pages/background/request_queue_unittest.cc

Issue 2228813003: Changes to fit better with the needs of the download manager. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Use typedef to hide an ugly type. Created 4 years, 4 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 side-by-side diff with in-line comments
Download patch
« no previous file with comments | « components/offline_pages/background/request_queue_store_unittest.cc ('k') | no next file » | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: components/offline_pages/background/request_queue_unittest.cc
diff --git a/components/offline_pages/background/request_queue_unittest.cc b/components/offline_pages/background/request_queue_unittest.cc
index 967257c6d83c047573e7cac7a124d32bf3fc7125..700172ad0bb2b2c2fef8ef45ed688c818d85bcf5 100644
--- a/components/offline_pages/background/request_queue_unittest.cc
+++ b/components/offline_pages/background/request_queue_unittest.cc
@@ -49,7 +49,8 @@ class RequestQueueTest : public testing::Test {
void GetRequestsDone(GetRequestsResult result,
const std::vector<SavePageRequest>& requests);
// Callback for removing request.
- void RemoveRequestDone(UpdateRequestResult result);
+ void RemoveRequestDone(
+ const RequestQueue::UpdateMultipleRequestResults& results);
void UpdateRequestDone(UpdateRequestResult result);
@@ -60,7 +61,10 @@ class RequestQueueTest : public testing::Test {
return last_added_request_.get();
}
- UpdateRequestResult last_remove_result() const { return last_remove_result_; }
+ const RequestQueue::UpdateMultipleRequestResults& last_remove_results()
+ const {
+ return last_remove_results_;
+ }
UpdateRequestResult last_update_result() const { return last_update_result_; }
@@ -74,8 +78,7 @@ class RequestQueueTest : public testing::Test {
private:
AddRequestResult last_add_result_;
std::unique_ptr<SavePageRequest> last_added_request_;
-
- UpdateRequestResult last_remove_result_;
+ RequestQueue::UpdateMultipleRequestResults last_remove_results_;
UpdateRequestResult last_update_result_;
GetRequestsResult last_get_requests_result_;
@@ -88,7 +91,6 @@ class RequestQueueTest : public testing::Test {
RequestQueueTest::RequestQueueTest()
: last_add_result_(AddRequestResult::STORE_FAILURE),
- last_remove_result_(UpdateRequestResult::STORE_FAILURE),
last_update_result_(UpdateRequestResult::STORE_FAILURE),
last_get_requests_result_(GetRequestsResult::STORE_FAILURE),
task_runner_(new base::TestSimpleTaskRunner),
@@ -119,8 +121,9 @@ void RequestQueueTest::GetRequestsDone(
last_requests_ = requests;
}
-void RequestQueueTest::RemoveRequestDone(UpdateRequestResult result) {
- last_remove_result_ = result;
+void RequestQueueTest::RemoveRequestDone(
+ const RequestQueue::UpdateMultipleRequestResults& results) {
+ last_remove_results_ = results;
}
void RequestQueueTest::UpdateRequestDone(UpdateRequestResult result) {
@@ -162,11 +165,14 @@ TEST_F(RequestQueueTest, RemoveRequest) {
PumpLoop();
ASSERT_EQ(kRequestId, last_added_request()->request_id());
- queue()->RemoveRequest(
- kRequestId,
+ std::vector<int64_t> remove_requests;
+ remove_requests.push_back(kRequestId);
+ queue()->RemoveRequests(
+ remove_requests,
base::Bind(&RequestQueueTest::RemoveRequestDone, base::Unretained(this)));
PumpLoop();
- ASSERT_EQ(UpdateRequestResult::SUCCESS, last_remove_result());
+ ASSERT_EQ(1ul, last_remove_results().size());
+ ASSERT_EQ(UpdateRequestResult::SUCCESS, last_remove_results().at(0).second);
queue()->GetRequests(
base::Bind(&RequestQueueTest::GetRequestsDone, base::Unretained(this)));
@@ -175,41 +181,40 @@ TEST_F(RequestQueueTest, RemoveRequest) {
ASSERT_EQ(0ul, last_requests().size());
}
-TEST_F(RequestQueueTest, RemoveRequestByClientId) {
+TEST_F(RequestQueueTest, RemoveSeveralRequests) {
base::Time creation_time = base::Time::Now();
- // Put two requests on the queue with different client IDs.
SavePageRequest request(kRequestId, kUrl, kClientId, creation_time,
kUserRequested);
queue()->AddRequest(request, base::Bind(&RequestQueueTest::AddRequestDone,
base::Unretained(this)));
+ PumpLoop();
+ ASSERT_EQ(kRequestId, last_added_request()->request_id());
+
SavePageRequest request2(kRequestId2, kUrl2, kClientId2, creation_time,
kUserRequested);
queue()->AddRequest(request2, base::Bind(&RequestQueueTest::AddRequestDone,
base::Unretained(this)));
PumpLoop();
+ ASSERT_EQ(kRequestId2, last_added_request()->request_id());
- queue()->GetRequests(
- base::Bind(&RequestQueueTest::GetRequestsDone, base::Unretained(this)));
- PumpLoop();
- ASSERT_EQ(GetRequestsResult::SUCCESS, last_get_requests_result());
- ASSERT_EQ(2ul, last_requests().size());
-
- std::vector<ClientId> client_ids;
- client_ids.push_back(kClientId);
-
- // Removing the first client ID should leave only the second on the queue.
- queue()->RemoveRequestsByClientId(
- client_ids,
+ std::vector<int64_t> remove_requests;
+ remove_requests.push_back(kRequestId);
+ remove_requests.push_back(kRequestId2);
+ queue()->RemoveRequests(
+ remove_requests,
base::Bind(&RequestQueueTest::RemoveRequestDone, base::Unretained(this)));
PumpLoop();
- ASSERT_EQ(UpdateRequestResult::SUCCESS, last_remove_result());
+ ASSERT_EQ(2ul, last_remove_results().size());
+ ASSERT_EQ(UpdateRequestResult::SUCCESS, last_remove_results().at(0).second);
+ ASSERT_EQ(UpdateRequestResult::SUCCESS, last_remove_results().at(1).second);
+ ASSERT_EQ(kRequestId, last_remove_results().at(0).first);
+ ASSERT_EQ(kRequestId2, last_remove_results().at(1).first);
queue()->GetRequests(
base::Bind(&RequestQueueTest::GetRequestsDone, base::Unretained(this)));
PumpLoop();
ASSERT_EQ(GetRequestsResult::SUCCESS, last_get_requests_result());
- ASSERT_EQ(1ul, last_requests().size());
- ASSERT_EQ(kClientId2, last_requests().front().client_id());
+ ASSERT_EQ(0ul, last_requests().size());
}
// A longer test populating the request queue with more than one item, properly
@@ -235,11 +240,15 @@ TEST_F(RequestQueueTest, MultipleRequestsAddGetRemove) {
ASSERT_EQ(GetRequestsResult::SUCCESS, last_get_requests_result());
ASSERT_EQ(2ul, last_requests().size());
- queue()->RemoveRequest(
- request1.request_id(),
+ std::vector<int64_t> remove_requests;
+ remove_requests.push_back(request1.request_id());
+ queue()->RemoveRequests(
+ remove_requests,
base::Bind(&RequestQueueTest::RemoveRequestDone, base::Unretained(this)));
PumpLoop();
- ASSERT_EQ(UpdateRequestResult::SUCCESS, last_remove_result());
+ ASSERT_EQ(1ul, last_remove_results().size());
+ ASSERT_EQ(kRequestId, last_remove_results().at(0).first);
+ ASSERT_EQ(UpdateRequestResult::SUCCESS, last_remove_results().at(0).second);
queue()->GetRequests(
base::Bind(&RequestQueueTest::GetRequestsDone, base::Unretained(this)));
« no previous file with comments | « components/offline_pages/background/request_queue_store_unittest.cc ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698