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

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

Issue 2197573003: Provide API in RequestCoordinator to remove results by client ID. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Comment change (TODO) 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 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/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"
(...skipping 274 matching lines...) Expand 10 before | Expand all | Expand 10 after
285 store->RemoveRequests(request_ids, 285 store->RemoveRequests(request_ids,
286 base::Bind(&RequestQueueStoreTestBase::RemoveDone, 286 base::Bind(&RequestQueueStoreTestBase::RemoveDone,
287 base::Unretained(this))); 287 base::Unretained(this)));
288 ASSERT_EQ(LastResult::kNone, this->last_result()); 288 ASSERT_EQ(LastResult::kNone, this->last_result());
289 ASSERT_EQ(0, this->last_remove_count()); 289 ASSERT_EQ(0, this->last_remove_count());
290 this->PumpLoop(); 290 this->PumpLoop();
291 ASSERT_EQ(LastResult::kTrue, this->last_result()); 291 ASSERT_EQ(LastResult::kTrue, this->last_result());
292 ASSERT_EQ(0, this->last_remove_count()); 292 ASSERT_EQ(0, this->last_remove_count());
293 } 293 }
294 294
295
fgorski 2016/08/02 05:01:23 nit: remove empty line.
Pete Williamson 2016/08/02 23:27:17 Done.
296 TYPED_TEST(RequestQueueStoreTest, RemoveRequestByClientId) {
fgorski 2016/08/02 05:01:23 I recommend testing with more than a single item,
Pete Williamson 2016/08/02 23:27:17 Added new test, made this one take two different i
297 std::unique_ptr<RequestQueueStore> store(this->BuildStore());
298 base::Time creation_time = base::Time::Now();
299 SavePageRequest original_request(
300 kRequestId, kUrl, kClientId, creation_time, kUserRequested);
301 store->AddOrUpdateRequest(
302 original_request, base::Bind(&RequestQueueStoreTestBase::AddOrUpdateDone,
303 base::Unretained(this)));
304 this->PumpLoop();
305 this->ClearResults();
306
307 // For debugging only, remove next code paragraph before checkin.
fgorski 2016/08/02 05:01:23 hmmm.
Pete Williamson 2016/08/02 23:27:17 Removed (normally I use a TODO so I can spot these
308 store->GetRequests(base::Bind(&RequestQueueStoreTestBase::GetRequestsDone,
309 base::Unretained(this)));
310 this->PumpLoop();
311 this->ClearResults();
312
313 std::vector<ClientId> client_ids{kClientId};
314 store->RemoveRequestsByClientId(
315 client_ids,
316 base::Bind(&RequestQueueStoreTestBase::RemoveDone,
317 base::Unretained(this)));
318 ASSERT_EQ(LastResult::kNone, this->last_result());
319 ASSERT_EQ(0, this->last_remove_count());
320 this->PumpLoop();
321 ASSERT_EQ(LastResult::kTrue, this->last_result());
322 ASSERT_EQ(1, this->last_remove_count());
323 this->ClearResults();
324
325 store->GetRequests(base::Bind(&RequestQueueStoreTestBase::GetRequestsDone,
326 base::Unretained(this)));
327 this->PumpLoop();
328 ASSERT_EQ(LastResult::kTrue, this->last_result());
329 ASSERT_TRUE(this->last_requests().empty());
330 this->ClearResults();
331
332 // Removing a request that is missing fails.
fgorski 2016/08/02 05:01:23 wow. Your copy-paste-fu is no good :) Please fix t
Pete Williamson 2016/08/02 23:27:17 Done.
333 store->RemoveRequestsByClientId(
334 client_ids,
335 base::Bind(&RequestQueueStoreTestBase::RemoveDone,
336 base::Unretained(this)));
337 ASSERT_EQ(LastResult::kNone, this->last_result());
338 ASSERT_EQ(0, this->last_remove_count());
339 this->PumpLoop();
340 ASSERT_EQ(LastResult::kTrue, this->last_result());
341 ASSERT_EQ(0, this->last_remove_count());
342 }
343
fgorski 2016/08/02 05:01:23 nit: empty line.
Pete Williamson 2016/08/02 23:27:17 Done.
344
295 TYPED_TEST(RequestQueueStoreTest, ResetStore) { 345 TYPED_TEST(RequestQueueStoreTest, ResetStore) {
296 std::unique_ptr<RequestQueueStore> store(this->BuildStore()); 346 std::unique_ptr<RequestQueueStore> store(this->BuildStore());
297 base::Time creation_time = base::Time::Now(); 347 base::Time creation_time = base::Time::Now();
298 SavePageRequest original_request( 348 SavePageRequest original_request(
299 kRequestId, kUrl, kClientId, creation_time, kUserRequested); 349 kRequestId, kUrl, kClientId, creation_time, kUserRequested);
300 store->AddOrUpdateRequest( 350 store->AddOrUpdateRequest(
301 original_request, base::Bind(&RequestQueueStoreTestBase::AddOrUpdateDone, 351 original_request, base::Bind(&RequestQueueStoreTestBase::AddOrUpdateDone,
302 base::Unretained(this))); 352 base::Unretained(this)));
303 this->PumpLoop(); 353 this->PumpLoop();
304 this->ClearResults(); 354 this->ClearResults();
(...skipping 35 matching lines...) Expand 10 before | Expand all | Expand 10 after
340 store->GetRequests(base::Bind(&RequestQueueStoreTestBase::GetRequestsDone, 390 store->GetRequests(base::Bind(&RequestQueueStoreTestBase::GetRequestsDone,
341 base::Unretained(this))); 391 base::Unretained(this)));
342 ASSERT_EQ(LastResult::kNone, this->last_result()); 392 ASSERT_EQ(LastResult::kNone, this->last_result());
343 this->PumpLoop(); 393 this->PumpLoop();
344 ASSERT_EQ(LastResult::kTrue, this->last_result()); 394 ASSERT_EQ(LastResult::kTrue, this->last_result());
345 ASSERT_EQ(1ul, this->last_requests().size()); 395 ASSERT_EQ(1ul, this->last_requests().size());
346 ASSERT_TRUE(original_request == this->last_requests()[0]); 396 ASSERT_TRUE(original_request == this->last_requests()[0]);
347 } 397 }
348 398
349 } // offline_pages 399 } // offline_pages
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698