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

Unified Diff: chrome/browser/android/offline_pages/prerendering_offliner_unittest.cc

Issue 2850953002: Add a unit test for "ALREADY_SAVED" being converted to "SUCCESS" (Closed)
Patch Set: Created 3 years, 8 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 | « no previous file | no next file » | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: chrome/browser/android/offline_pages/prerendering_offliner_unittest.cc
diff --git a/chrome/browser/android/offline_pages/prerendering_offliner_unittest.cc b/chrome/browser/android/offline_pages/prerendering_offliner_unittest.cc
index 626e8ee4d6aa003e1c5823dc26e79c9c29080992..0c91e7ed28ee5c3dcca6ce825d3a6d129bb784da 100644
--- a/chrome/browser/android/offline_pages/prerendering_offliner_unittest.cc
+++ b/chrome/browser/android/offline_pages/prerendering_offliner_unittest.cc
@@ -159,6 +159,14 @@ class MockOfflinePageModel : public StubOfflinePageModel {
base::Bind(save_page_callback_, SavePageResult::SUCCESS, 123456));
}
+ void CompleteSavingAsAlreadyExists() {
+ DCHECK(mock_saving_);
+ mock_saving_ = false;
+ base::ThreadTaskRunnerHandle::Get()->PostTask(
+ FROM_HERE, base::Bind(save_page_callback_,
+ SavePageResult::ALREADY_EXISTS, 123456));
+ }
+
bool mock_saving() const { return mock_saving_; }
private:
@@ -410,6 +418,29 @@ TEST_F(PrerenderingOfflinerTest, LoadAndSaveSuccessful) {
EXPECT_FALSE(SaveInProgress());
}
+TEST_F(PrerenderingOfflinerTest, LoadAndSavePageAlreadyExists) {
+ base::Time creation_time = base::Time::Now();
+ SavePageRequest request(kRequestId, kHttpUrl, kClientId, creation_time,
+ kUserRequested);
+ EXPECT_TRUE(offliner()->LoadAndSave(request, completion_callback(),
+ progress_callback()));
+ EXPECT_FALSE(loader()->IsIdle());
+ EXPECT_EQ(Offliner::RequestStatus::UNKNOWN, request_status());
+
+ loader()->CompleteLoadingAsLoaded();
+ PumpLoop();
+ EXPECT_FALSE(completion_callback_called());
+ EXPECT_TRUE(loader()->IsLoaded());
+ EXPECT_TRUE(SaveInProgress());
+
+ model()->CompleteSavingAsAlreadyExists();
+ PumpLoop();
+ EXPECT_TRUE(completion_callback_called());
+ EXPECT_EQ(Offliner::RequestStatus::SAVED, request_status());
+ EXPECT_FALSE(loader()->IsLoaded());
+ EXPECT_FALSE(SaveInProgress());
+}
+
TEST_F(PrerenderingOfflinerTest, LoadAndSaveLoadedButThenCanceledFromLoader) {
base::Time creation_time = base::Time::Now();
SavePageRequest request(
« no previous file with comments | « no previous file | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698