OLD | NEW |
1 // Copyright 2015 The Chromium Authors. All rights reserved. | 1 // Copyright 2015 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/offline_page_model.h" | 5 #include "components/offline_pages/offline_page_model.h" |
6 | 6 |
7 #include <algorithm> | 7 #include <algorithm> |
8 | 8 |
9 #include "base/bind.h" | 9 #include "base/bind.h" |
10 #include "base/files/file_util.h" | 10 #include "base/files/file_util.h" |
(...skipping 370 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
381 | 381 |
382 OfflinePageTestStore* OfflinePageModelTest::GetStore() { | 382 OfflinePageTestStore* OfflinePageModelTest::GetStore() { |
383 return static_cast<OfflinePageTestStore*>(model()->GetStoreForTesting()); | 383 return static_cast<OfflinePageTestStore*>(model()->GetStoreForTesting()); |
384 } | 384 } |
385 | 385 |
386 TEST_F(OfflinePageModelTest, SavePageSuccessful) { | 386 TEST_F(OfflinePageModelTest, SavePageSuccessful) { |
387 scoped_ptr<OfflinePageTestArchiver> archiver( | 387 scoped_ptr<OfflinePageTestArchiver> archiver( |
388 BuildArchiver(kTestUrl, | 388 BuildArchiver(kTestUrl, |
389 OfflinePageArchiver::ArchiverResult::SUCCESSFULLY_CREATED) | 389 OfflinePageArchiver::ArchiverResult::SUCCESSFULLY_CREATED) |
390 .Pass()); | 390 .Pass()); |
| 391 EXPECT_FALSE(model()->HasOfflinePages()); |
391 model()->SavePage( | 392 model()->SavePage( |
392 kTestUrl, kTestPageBookmarkId1, archiver.Pass(), | 393 kTestUrl, kTestPageBookmarkId1, archiver.Pass(), |
393 base::Bind(&OfflinePageModelTest::OnSavePageDone, AsWeakPtr())); | 394 base::Bind(&OfflinePageModelTest::OnSavePageDone, AsWeakPtr())); |
394 PumpLoop(); | 395 PumpLoop(); |
| 396 EXPECT_TRUE(model()->HasOfflinePages()); |
395 | 397 |
396 OfflinePageTestStore* store = GetStore(); | 398 OfflinePageTestStore* store = GetStore(); |
397 EXPECT_EQ(kTestUrl, store->last_saved_page().url); | 399 EXPECT_EQ(kTestUrl, store->last_saved_page().url); |
398 EXPECT_EQ(kTestPageBookmarkId1, store->last_saved_page().bookmark_id); | 400 EXPECT_EQ(kTestPageBookmarkId1, store->last_saved_page().bookmark_id); |
399 // Save last_archiver_path since it will be referred to later. | 401 // Save last_archiver_path since it will be referred to later. |
400 base::FilePath archiver_path = last_archiver_path(); | 402 base::FilePath archiver_path = last_archiver_path(); |
401 EXPECT_EQ(archiver_path, store->last_saved_page().file_path); | 403 EXPECT_EQ(archiver_path, store->last_saved_page().file_path); |
402 EXPECT_EQ(kTestFileSize, store->last_saved_page().file_size); | 404 EXPECT_EQ(kTestFileSize, store->last_saved_page().file_size); |
403 EXPECT_EQ(SavePageResult::SUCCESS, last_save_result()); | 405 EXPECT_EQ(SavePageResult::SUCCESS, last_save_result()); |
404 | 406 |
(...skipping 429 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
834 | 836 |
835 page = model()->GetPageByOfflineURL(offline_url); | 837 page = model()->GetPageByOfflineURL(offline_url); |
836 EXPECT_TRUE(page); | 838 EXPECT_TRUE(page); |
837 EXPECT_EQ(kTestUrl, page->url); | 839 EXPECT_EQ(kTestUrl, page->url); |
838 EXPECT_EQ(kTestPageBookmarkId1, page->bookmark_id); | 840 EXPECT_EQ(kTestPageBookmarkId1, page->bookmark_id); |
839 | 841 |
840 page = model()->GetPageByOfflineURL(GURL("http://foo")); | 842 page = model()->GetPageByOfflineURL(GURL("http://foo")); |
841 EXPECT_FALSE(page); | 843 EXPECT_FALSE(page); |
842 } | 844 } |
843 | 845 |
| 846 TEST_F(OfflinePageModelTest, GetPageByOnlineURL) { |
| 847 scoped_ptr<OfflinePageTestArchiver> archiver( |
| 848 BuildArchiver(kTestUrl, |
| 849 OfflinePageArchiver::ArchiverResult::SUCCESSFULLY_CREATED) |
| 850 .Pass()); |
| 851 model()->SavePage( |
| 852 kTestUrl, kTestPageBookmarkId1, archiver.Pass(), |
| 853 base::Bind(&OfflinePageModelTest::OnSavePageDone, AsWeakPtr())); |
| 854 PumpLoop(); |
| 855 |
| 856 scoped_ptr<OfflinePageTestArchiver> archiver2( |
| 857 BuildArchiver(kTestUrl2, |
| 858 OfflinePageArchiver::ArchiverResult::SUCCESSFULLY_CREATED) |
| 859 .Pass()); |
| 860 model()->SavePage( |
| 861 kTestUrl2, kTestPageBookmarkId2, archiver2.Pass(), |
| 862 base::Bind(&OfflinePageModelTest::OnSavePageDone, AsWeakPtr())); |
| 863 PumpLoop(); |
| 864 |
| 865 const OfflinePageItem* page = model()->GetPageByOnlineURL(kTestUrl2); |
| 866 EXPECT_TRUE(page); |
| 867 EXPECT_EQ(kTestUrl2, page->url); |
| 868 EXPECT_EQ(kTestPageBookmarkId2, page->bookmark_id); |
| 869 |
| 870 page = model()->GetPageByOnlineURL(kTestUrl); |
| 871 EXPECT_TRUE(page); |
| 872 EXPECT_EQ(kTestUrl, page->url); |
| 873 EXPECT_EQ(kTestPageBookmarkId1, page->bookmark_id); |
| 874 |
| 875 page = model()->GetPageByOnlineURL(GURL("http://foo")); |
| 876 EXPECT_FALSE(page); |
| 877 } |
| 878 |
844 // Test that model returns pages that are older than 30 days as candidates for | 879 // Test that model returns pages that are older than 30 days as candidates for |
845 // clean up, hence the numbers in time delta. | 880 // clean up, hence the numbers in time delta. |
846 TEST_F(OfflinePageModelTest, GetPagesToCleanUp) { | 881 TEST_F(OfflinePageModelTest, GetPagesToCleanUp) { |
847 base::Time now = base::Time::Now(); | 882 base::Time now = base::Time::Now(); |
848 | 883 |
849 scoped_ptr<OfflinePageTestArchiver> archiver( | 884 scoped_ptr<OfflinePageTestArchiver> archiver( |
850 BuildArchiver(kTestUrl, | 885 BuildArchiver(kTestUrl, |
851 OfflinePageArchiver::ArchiverResult::SUCCESSFULLY_CREATED) | 886 OfflinePageArchiver::ArchiverResult::SUCCESSFULLY_CREATED) |
852 .Pass()); | 887 .Pass()); |
853 model()->SavePage( | 888 model()->SavePage( |
(...skipping 88 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
942 .Pass()); | 977 .Pass()); |
943 model()->SavePage( | 978 model()->SavePage( |
944 kTestUrl2, kTestPageBookmarkId2, archiver3.Pass(), | 979 kTestUrl2, kTestPageBookmarkId2, archiver3.Pass(), |
945 base::Bind(&OfflinePageModelTest::OnSavePageDone, AsWeakPtr())); | 980 base::Bind(&OfflinePageModelTest::OnSavePageDone, AsWeakPtr())); |
946 PumpLoop(); | 981 PumpLoop(); |
947 EXPECT_EQ(1UL, model()->GetAllPages().size()); | 982 EXPECT_EQ(1UL, model()->GetAllPages().size()); |
948 EXPECT_EQ(1UL, GetStore()->offline_pages().size()); | 983 EXPECT_EQ(1UL, GetStore()->offline_pages().size()); |
949 } | 984 } |
950 | 985 |
951 } // namespace offline_pages | 986 } // namespace offline_pages |
OLD | NEW |