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

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

Issue 2256373002: Adds request queue removal capability to OfflinePageBridge. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@query-queue
Patch Set: Rebase. 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
Index: components/offline_pages/background/request_coordinator_unittest.cc
diff --git a/components/offline_pages/background/request_coordinator_unittest.cc b/components/offline_pages/background/request_coordinator_unittest.cc
index b35b5945191582ef8aa36a65940b71b427220539..d63409ed2d579cfba0a43c51ee3669b9ecf39f4f 100644
--- a/components/offline_pages/background/request_coordinator_unittest.cc
+++ b/components/offline_pages/background/request_coordinator_unittest.cc
@@ -214,6 +214,10 @@ class RequestCoordinatorTest
void GetRequestsDone(RequestQueue::GetRequestsResult result,
const std::vector<SavePageRequest>& requests);
+ // Callback for removing requests.
+ void RemoveRequestsDone(
+ const RequestQueue::UpdateMultipleRequestResults& results);
+
// Callback for getting request statuses.
void GetQueuedRequestsDone(const std::vector<SavePageRequest>& requests);
@@ -228,6 +232,11 @@ class RequestCoordinatorTest
return last_requests_;
}
+ const RequestQueue::UpdateMultipleRequestResults& last_remove_results()
+ const {
+ return last_remove_results_;
+ }
+
void EnableOfflinerCallback(bool enable) {
offliner_->enable_callback(enable);
}
@@ -259,6 +268,7 @@ class RequestCoordinatorTest
private:
RequestQueue::GetRequestsResult last_get_requests_result_;
std::vector<SavePageRequest> last_requests_;
+ RequestQueue::UpdateMultipleRequestResults last_remove_results_;
scoped_refptr<base::TestMockTimeTaskRunner> task_runner_;
base::ThreadTaskRunnerHandle task_runner_handle_;
std::unique_ptr<RequestCoordinator> coordinator_;
@@ -304,6 +314,12 @@ void RequestCoordinatorTest::GetRequestsDone(
last_requests_ = requests;
}
+void RequestCoordinatorTest::RemoveRequestsDone(
+ const RequestQueue::UpdateMultipleRequestResults& results) {
+ last_remove_results_ = results;
+ waiter_.Signal();
+}
+
void RequestCoordinatorTest::GetQueuedRequestsDone(
const std::vector<SavePageRequest>& requests) {
last_requests_ = requests;
@@ -631,7 +647,9 @@ TEST_F(RequestCoordinatorTest, RemoveInflightRequest) {
// Remove the request while it is processing.
std::vector<int64_t> request_ids{kRequestId1};
- coordinator()->RemoveRequests(request_ids);
+ coordinator()->RemoveRequests(
+ request_ids, base::Bind(&RequestCoordinatorTest::RemoveRequestsDone,
+ base::Unretained(this)));
// Let the async callbacks in the cancel run.
PumpLoop();
@@ -789,7 +807,7 @@ TEST_F(RequestCoordinatorTest, PauseAndResumeObserver) {
EXPECT_EQ(SavePageRequest::RequestState::AVAILABLE, observer().state());
}
-TEST_F(RequestCoordinatorTest, ObserverdRemoveRequest) {
+TEST_F(RequestCoordinatorTest, RemoveRequest) {
// Add a request to the queue.
offline_pages::SavePageRequest request1(kRequestId1, kUrl1, kClientId1,
base::Time::Now(), kUserRequested);
@@ -801,12 +819,19 @@ TEST_F(RequestCoordinatorTest, ObserverdRemoveRequest) {
// Remove the request.
std::vector<int64_t> request_ids;
request_ids.push_back(kRequestId1);
- coordinator()->RemoveRequests(request_ids);
+ coordinator()->RemoveRequests(
+ request_ids, base::Bind(&RequestCoordinatorTest::RemoveRequestsDone,
+ base::Unretained(this)));
+
+ PumpLoop();
+ WaitForCallback();
PumpLoop();
EXPECT_TRUE(observer().completed_called());
EXPECT_EQ(RequestCoordinator::SavePageStatus::REMOVED,
observer().last_status());
+ EXPECT_EQ(1UL, last_remove_results().size());
+ EXPECT_EQ(kRequestId1, std::get<0>(last_remove_results().at(0)));
}
} // namespace offline_pages
« no previous file with comments | « components/offline_pages/background/request_coordinator.cc ('k') | components/offline_pages/background/request_queue.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698