summaryrefslogtreecommitdiffstats
path: root/components/offline_pages/offline_page_test_store.cc
diff options
context:
space:
mode:
authorjianli <jianli@chromium.org>2015-12-11 18:20:32 -0800
committerCommit bot <commit-bot@chromium.org>2015-12-12 02:22:11 +0000
commitaafd2acd988b974d05f4518cdf33d979ec5ed5a8 (patch)
tree12a2dfd86986732f700f798cd2ec8652a8abdf36 /components/offline_pages/offline_page_test_store.cc
parent0c2a807f91b43ed415a203f055b81a8288af67ff (diff)
downloadchromium_src-aafd2acd988b974d05f4518cdf33d979ec5ed5a8.zip
chromium_src-aafd2acd988b974d05f4518cdf33d979ec5ed5a8.tar.gz
chromium_src-aafd2acd988b974d05f4518cdf33d979ec5ed5a8.tar.bz2
Test FinalizePageDeletion and DeletePagesByBookmarkId
BUG=565580,567942 Review URL: https://codereview.chromium.org/1518943002 Cr-Commit-Position: refs/heads/master@{#364870}
Diffstat (limited to 'components/offline_pages/offline_page_test_store.cc')
-rw-r--r--components/offline_pages/offline_page_test_store.cc28
1 files changed, 16 insertions, 12 deletions
diff --git a/components/offline_pages/offline_page_test_store.cc b/components/offline_pages/offline_page_test_store.cc
index 3a5b256..755191c 100644
--- a/components/offline_pages/offline_page_test_store.cc
+++ b/components/offline_pages/offline_page_test_store.cc
@@ -31,7 +31,7 @@ void OfflinePageTestStore::Load(const LoadCallback& callback) {
load_status = OfflinePageMetadataStore::LOAD_SUCCEEDED;
}
task_runner_->PostTask(FROM_HERE,
- base::Bind(callback, load_status, offline_pages_));
+ base::Bind(callback, load_status, GetAllPages()));
}
void OfflinePageTestStore::AddOrUpdateOfflinePage(
@@ -40,7 +40,7 @@ void OfflinePageTestStore::AddOrUpdateOfflinePage(
last_saved_page_ = offline_page;
bool result = scenario_ != TestScenario::WRITE_FAILED;
if (result)
- offline_pages_.push_back(offline_page);
+ offline_pages_[offline_page.bookmark_id] = offline_page;
task_runner_->PostTask(FROM_HERE, base::Bind(callback, result));
}
@@ -50,12 +50,11 @@ void OfflinePageTestStore::RemoveOfflinePages(
ASSERT_FALSE(bookmark_ids.empty());
bool result = false;
if (scenario_ != TestScenario::REMOVE_FAILED) {
- for (auto iter = offline_pages_.begin(); iter != offline_pages_.end();
- ++iter) {
- if (iter->bookmark_id == bookmark_ids[0]) {
+ for (const auto& bookmark_id : bookmark_ids) {
+ auto iter = offline_pages_.find(bookmark_id);
+ if (iter != offline_pages_.end()) {
offline_pages_.erase(iter);
result = true;
- break;
}
}
}
@@ -71,12 +70,17 @@ void OfflinePageTestStore::Reset(const ResetCallback& callback) {
void OfflinePageTestStore::UpdateLastAccessTime(
int64 bookmark_id,
const base::Time& last_access_time) {
- for (auto& offline_page : offline_pages_) {
- if (offline_page.bookmark_id == bookmark_id) {
- offline_page.last_access_time = last_access_time;
- return;
- }
- }
+ auto iter = offline_pages_.find(bookmark_id);
+ if (iter == offline_pages_.end())
+ return;
+ iter->second.last_access_time = last_access_time;
+}
+
+std::vector<OfflinePageItem> OfflinePageTestStore::GetAllPages() const {
+ std::vector<OfflinePageItem> offline_pages;
+ for (const auto& id_page_pair : offline_pages_)
+ offline_pages.push_back(id_page_pair.second);
+ return offline_pages;
}
} // namespace offline_pages