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 353 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
364 ResetResults(); | 364 ResetResults(); |
365 | 365 |
366 const std::vector<OfflinePageItem>& offline_pages = model()->GetAllPages(); | 366 const std::vector<OfflinePageItem>& offline_pages = model()->GetAllPages(); |
367 | 367 |
368 EXPECT_EQ(1UL, offline_pages.size()); | 368 EXPECT_EQ(1UL, offline_pages.size()); |
369 EXPECT_EQ(kTestUrl, offline_pages[0].url); | 369 EXPECT_EQ(kTestUrl, offline_pages[0].url); |
370 EXPECT_EQ(kTestPageBookmarkId1, offline_pages[0].bookmark_id); | 370 EXPECT_EQ(kTestPageBookmarkId1, offline_pages[0].bookmark_id); |
371 EXPECT_EQ(archiver_path, offline_pages[0].file_path); | 371 EXPECT_EQ(archiver_path, offline_pages[0].file_path); |
372 EXPECT_EQ(kTestFileSize, offline_pages[0].file_size); | 372 EXPECT_EQ(kTestFileSize, offline_pages[0].file_size); |
373 EXPECT_EQ(0, offline_pages[0].access_count); | 373 EXPECT_EQ(0, offline_pages[0].access_count); |
374 EXPECT_EQ(0, offline_pages[0].flags); | |
374 } | 375 } |
375 | 376 |
376 TEST_F(OfflinePageModelTest, SavePageOfflineArchiverCancelled) { | 377 TEST_F(OfflinePageModelTest, SavePageOfflineArchiverCancelled) { |
377 scoped_ptr<OfflinePageTestArchiver> archiver( | 378 scoped_ptr<OfflinePageTestArchiver> archiver( |
378 BuildArchiver(kTestUrl, | 379 BuildArchiver(kTestUrl, |
379 OfflinePageArchiver::ArchiverResult::ERROR_CANCELED) | 380 OfflinePageArchiver::ArchiverResult::ERROR_CANCELED) |
380 .Pass()); | 381 .Pass()); |
381 model()->SavePage( | 382 model()->SavePage( |
382 kTestUrl, kTestPageBookmarkId1, archiver.Pass(), | 383 kTestUrl, kTestPageBookmarkId1, archiver.Pass(), |
383 base::Bind(&OfflinePageModelTest::OnSavePageDone, AsWeakPtr())); | 384 base::Bind(&OfflinePageModelTest::OnSavePageDone, AsWeakPtr())); |
(...skipping 114 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
498 ResetResults(); | 499 ResetResults(); |
499 | 500 |
500 const std::vector<OfflinePageItem>& offline_pages = model()->GetAllPages(); | 501 const std::vector<OfflinePageItem>& offline_pages = model()->GetAllPages(); |
501 | 502 |
502 EXPECT_EQ(2UL, offline_pages.size()); | 503 EXPECT_EQ(2UL, offline_pages.size()); |
503 EXPECT_EQ(kTestUrl, offline_pages[0].url); | 504 EXPECT_EQ(kTestUrl, offline_pages[0].url); |
504 EXPECT_EQ(kTestPageBookmarkId1, offline_pages[0].bookmark_id); | 505 EXPECT_EQ(kTestPageBookmarkId1, offline_pages[0].bookmark_id); |
505 EXPECT_EQ(archiver_path, offline_pages[0].file_path); | 506 EXPECT_EQ(archiver_path, offline_pages[0].file_path); |
506 EXPECT_EQ(kTestFileSize, offline_pages[0].file_size); | 507 EXPECT_EQ(kTestFileSize, offline_pages[0].file_size); |
507 EXPECT_EQ(0, offline_pages[0].access_count); | 508 EXPECT_EQ(0, offline_pages[0].access_count); |
509 EXPECT_EQ(0, offline_pages[0].flags); | |
508 EXPECT_EQ(kTestUrl2, offline_pages[1].url); | 510 EXPECT_EQ(kTestUrl2, offline_pages[1].url); |
509 EXPECT_EQ(kTestPageBookmarkId2, offline_pages[1].bookmark_id); | 511 EXPECT_EQ(kTestPageBookmarkId2, offline_pages[1].bookmark_id); |
510 EXPECT_EQ(archiver_path2, offline_pages[1].file_path); | 512 EXPECT_EQ(archiver_path2, offline_pages[1].file_path); |
511 EXPECT_EQ(kTestFileSize, offline_pages[1].file_size); | 513 EXPECT_EQ(kTestFileSize, offline_pages[1].file_size); |
512 EXPECT_EQ(0, offline_pages[1].access_count); | 514 EXPECT_EQ(0, offline_pages[1].access_count); |
515 EXPECT_EQ(0, offline_pages[1].flags); | |
513 } | 516 } |
514 | 517 |
515 TEST_F(OfflinePageModelTest, MarkPageAccessed) { | 518 TEST_F(OfflinePageModelTest, MarkPageAccessed) { |
516 scoped_ptr<OfflinePageTestArchiver> archiver( | 519 scoped_ptr<OfflinePageTestArchiver> archiver( |
517 BuildArchiver(kTestUrl, | 520 BuildArchiver(kTestUrl, |
518 OfflinePageArchiver::ArchiverResult::SUCCESSFULLY_CREATED) | 521 OfflinePageArchiver::ArchiverResult::SUCCESSFULLY_CREATED) |
519 .Pass()); | 522 .Pass()); |
520 model()->SavePage( | 523 model()->SavePage( |
521 kTestUrl, kTestPageBookmarkId1, archiver.Pass(), | 524 kTestUrl, kTestPageBookmarkId1, archiver.Pass(), |
522 base::Bind(&OfflinePageModelTest::OnSavePageDone, AsWeakPtr())); | 525 base::Bind(&OfflinePageModelTest::OnSavePageDone, AsWeakPtr())); |
523 PumpLoop(); | 526 PumpLoop(); |
524 | 527 |
525 // This will increase access_count by one. | 528 // This will increase access_count by one. |
526 model()->MarkPageAccessed(kTestPageBookmarkId1); | 529 model()->MarkPageAccessed(kTestPageBookmarkId1); |
527 base::RunLoop().RunUntilIdle(); | 530 base::RunLoop().RunUntilIdle(); |
528 | 531 |
529 const std::vector<OfflinePageItem>& offline_pages = model()->GetAllPages(); | 532 const std::vector<OfflinePageItem>& offline_pages = model()->GetAllPages(); |
530 | 533 |
531 EXPECT_EQ(1UL, offline_pages.size()); | 534 EXPECT_EQ(1UL, offline_pages.size()); |
532 EXPECT_EQ(kTestUrl, offline_pages[0].url); | 535 EXPECT_EQ(kTestUrl, offline_pages[0].url); |
533 EXPECT_EQ(kTestPageBookmarkId1, offline_pages[0].bookmark_id); | 536 EXPECT_EQ(kTestPageBookmarkId1, offline_pages[0].bookmark_id); |
534 EXPECT_EQ(kTestFileSize, offline_pages[0].file_size); | 537 EXPECT_EQ(kTestFileSize, offline_pages[0].file_size); |
535 EXPECT_EQ(1, offline_pages[0].access_count); | 538 EXPECT_EQ(1, offline_pages[0].access_count); |
536 } | 539 } |
537 | 540 |
541 TEST_F(OfflinePageModelTest, MarkPageForDeletion) { | |
fgorski
2015/09/25 20:30:50
is there a test covering the actual deletion after
jianli
2015/09/25 20:52:36
It is hard to test this without switching to using
fgorski
2015/09/25 21:23:56
ok, please add a task for that and we can do it in
jianli
2015/10/09 23:26:26
Done.
| |
542 scoped_ptr<OfflinePageTestArchiver> archiver( | |
543 BuildArchiver(kTestUrl, | |
544 OfflinePageArchiver::ArchiverResult::SUCCESSFULLY_CREATED) | |
545 .Pass()); | |
546 model()->SavePage( | |
547 kTestUrl, kTestPageBookmarkId1, archiver.Pass(), | |
548 base::Bind(&OfflinePageModelTest::OnSavePageDone, AsWeakPtr())); | |
549 PumpLoop(); | |
550 | |
551 // This will increase access_count by one. | |
552 model()->MarkPageForDeletion( | |
553 kTestPageBookmarkId1, | |
554 base::Bind(&OfflinePageModelTest::OnDeletePageDone, AsWeakPtr())); | |
555 PumpLoop(); | |
556 | |
557 // GetAllPages will not return the page that is marked for deletion. | |
558 const std::vector<OfflinePageItem>& offline_pages = model()->GetAllPages(); | |
559 } | |
560 | |
538 TEST_F(OfflinePageModelTest, GetAllPagesStoreEmpty) { | 561 TEST_F(OfflinePageModelTest, GetAllPagesStoreEmpty) { |
539 const std::vector<OfflinePageItem>& offline_pages = model()->GetAllPages(); | 562 const std::vector<OfflinePageItem>& offline_pages = model()->GetAllPages(); |
540 | 563 |
541 EXPECT_EQ(0UL, offline_pages.size()); | 564 EXPECT_EQ(0UL, offline_pages.size()); |
542 } | 565 } |
543 | 566 |
544 TEST_F(OfflinePageModelTest, GetAllPagesStoreFailure) { | 567 TEST_F(OfflinePageModelTest, GetAllPagesStoreFailure) { |
545 GetStore()->set_test_scenario( | 568 GetStore()->set_test_scenario( |
546 OfflinePageTestStore::TestScenario::LOAD_FAILED); | 569 OfflinePageTestStore::TestScenario::LOAD_FAILED); |
547 const std::vector<OfflinePageItem>& offline_pages = model()->GetAllPages(); | 570 const std::vector<OfflinePageItem>& offline_pages = model()->GetAllPages(); |
(...skipping 199 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
747 // has not been in the store long enough. | 770 // has not been in the store long enough. |
748 std::vector<OfflinePageItem> pages_to_clean_up = model()->GetPagesToCleanUp(); | 771 std::vector<OfflinePageItem> pages_to_clean_up = model()->GetPagesToCleanUp(); |
749 EXPECT_EQ(2UL, pages_to_clean_up.size()); | 772 EXPECT_EQ(2UL, pages_to_clean_up.size()); |
750 EXPECT_EQ(kTestUrl, pages_to_clean_up[0].url); | 773 EXPECT_EQ(kTestUrl, pages_to_clean_up[0].url); |
751 EXPECT_EQ(kTestPageBookmarkId1, pages_to_clean_up[0].bookmark_id); | 774 EXPECT_EQ(kTestPageBookmarkId1, pages_to_clean_up[0].bookmark_id); |
752 EXPECT_EQ(kTestUrl2, pages_to_clean_up[1].url); | 775 EXPECT_EQ(kTestUrl2, pages_to_clean_up[1].url); |
753 EXPECT_EQ(kTestPageBookmarkId2, pages_to_clean_up[1].bookmark_id); | 776 EXPECT_EQ(kTestPageBookmarkId2, pages_to_clean_up[1].bookmark_id); |
754 } | 777 } |
755 | 778 |
756 } // namespace offline_pages | 779 } // namespace offline_pages |
OLD | NEW |