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

Unified Diff: components/offline_pages/offline_page_model_impl_unittest.cc

Issue 2536573003: [Offline pages] Preventing GetPagesMatchingQuery from running before model is loaded (Closed)
Patch Set: Adding a test for public method GetPagesMatchingQuery Created 4 years, 1 month 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/offline_page_model_impl_unittest.cc
diff --git a/components/offline_pages/offline_page_model_impl_unittest.cc b/components/offline_pages/offline_page_model_impl_unittest.cc
index 6a01066fa2927edf27faf9bd90865046fa552f1a..51360f9036ad66facb7d639a1b08601b81922579 100644
--- a/components/offline_pages/offline_page_model_impl_unittest.cc
+++ b/components/offline_pages/offline_page_model_impl_unittest.cc
@@ -482,7 +482,7 @@ bool OfflinePageModelImplTest::HasPages(std::string name_space) {
TEST_F(OfflinePageModelImplTest, SavePageSuccessful) {
EXPECT_FALSE(HasPages(kTestClientNamespace));
- std::unique_ptr<OfflinePageTestArchiver> archiver(BuildArchiver(
+ std::unique_ptr<OfflinePageTestArchiver> archiver(BuildArchiver(
kTestUrl, OfflinePageArchiver::ArchiverResult::SUCCESSFULLY_CREATED));
SavePageWithArchiverAsync(
kTestUrl, kTestClientId1, kTestUrl2, std::move(archiver));
@@ -1271,6 +1271,37 @@ TEST_F(OfflinePageModelImplTest, StoreResetFailed) {
EXPECT_EQ(SavePageResult::STORE_FAILURE, result.first);
}
+TEST_F(OfflinePageModelImplTest, GetPagesMatchingQuery) {
+ std::unique_ptr<OfflinePageTestArchiver> archiver(BuildArchiver(
+ kTestUrl, OfflinePageArchiver::ArchiverResult::SUCCESSFULLY_CREATED));
+ SavePageWithArchiverAsync(kTestUrl, kTestClientId1, kTestUrl2,
+ std::move(archiver));
+ PumpLoop();
+
+ std::vector<ClientId> client_ids{kTestClientId1};
+ OfflinePageModelQueryBuilder builder;
+ builder.SetClientIds(OfflinePageModelQuery::Requirement::INCLUDE_MATCHING,
+ client_ids);
+
+ MultipleOfflinePageItemResult offline_pages;
+ model()->GetPagesMatchingQuery(
+ builder.Build(model()->GetPolicyController()),
+ base::Bind(&OfflinePageModelImplTest::OnGetMultipleOfflinePageItemsResult,
+ AsWeakPtr(), base::Unretained(&offline_pages)));
+ PumpLoop();
+
+ ASSERT_EQ(1UL, offline_pages.size());
+ EXPECT_EQ(kTestUrl, offline_pages[0].url);
+ EXPECT_EQ(kTestClientId1.id, offline_pages[0].client_id.id);
+ EXPECT_EQ(kTestClientId1.name_space, offline_pages[0].client_id.name_space);
+ EXPECT_EQ(last_archiver_path(), offline_pages[0].file_path);
+ EXPECT_EQ(kTestFileSize, offline_pages[0].file_size);
+ EXPECT_EQ(0, offline_pages[0].access_count);
+ EXPECT_EQ(0, offline_pages[0].flags);
+ EXPECT_EQ(kTestTitle, offline_pages[0].title);
+ EXPECT_EQ(kTestUrl2, offline_pages[0].original_url);
+}
+
TEST(CommandLineFlagsTest, OfflineBookmarks) {
// Disabled by default.
EXPECT_FALSE(offline_pages::IsOfflineBookmarksEnabled());

Powered by Google App Engine
This is Rietveld 408576698