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_metadata_store.h" | 5 #include "components/offline_pages/offline_page_metadata_store.h" |
6 | 6 |
7 #include <stdint.h> | 7 #include <stdint.h> |
8 | 8 |
9 #include <memory> | 9 #include <memory> |
10 | 10 |
(...skipping 192 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
203 } | 203 } |
204 | 204 |
205 OfflinePageMetadataStore* BuildStoreM54(const base::FilePath& file_path) { | 205 OfflinePageMetadataStore* BuildStoreM54(const base::FilePath& file_path) { |
206 BuildTestStoreWithSchemaFromM54(file_path); | 206 BuildTestStoreWithSchemaFromM54(file_path); |
207 OfflinePageMetadataStoreSQL* store = new OfflinePageMetadataStoreSQL( | 207 OfflinePageMetadataStoreSQL* store = new OfflinePageMetadataStoreSQL( |
208 base::ThreadTaskRunnerHandle::Get(), file_path); | 208 base::ThreadTaskRunnerHandle::Get(), file_path); |
209 return store; | 209 return store; |
210 } | 210 } |
211 }; | 211 }; |
212 | 212 |
213 enum CalledCallback { NONE, LOAD, ADD, REMOVE, RESET }; | 213 enum CalledCallback { NONE, LOAD, ADD, UPDATE, REMOVE, RESET }; |
214 enum Status { STATUS_NONE, STATUS_TRUE, STATUS_FALSE }; | 214 enum Status { STATUS_NONE, STATUS_TRUE, STATUS_FALSE }; |
215 | 215 |
216 class OfflinePageMetadataStoreTest : public testing::Test { | 216 class OfflinePageMetadataStoreTest : public testing::Test { |
217 public: | 217 public: |
218 OfflinePageMetadataStoreTest(); | 218 OfflinePageMetadataStoreTest(); |
219 ~OfflinePageMetadataStoreTest() override; | 219 ~OfflinePageMetadataStoreTest() override; |
220 | 220 |
221 void TearDown() override { | 221 void TearDown() override { |
222 // Wait for all the pieces of the store to delete itself properly. | 222 // Wait for all the pieces of the store to delete itself properly. |
223 PumpLoop(); | 223 PumpLoop(); |
224 } | 224 } |
225 | 225 |
226 std::unique_ptr<OfflinePageMetadataStore> BuildStore(); | 226 std::unique_ptr<OfflinePageMetadataStore> BuildStore(); |
227 std::unique_ptr<OfflinePageMetadataStore> BuildStoreWithSchemaFromM52(); | 227 std::unique_ptr<OfflinePageMetadataStore> BuildStoreWithSchemaFromM52(); |
228 std::unique_ptr<OfflinePageMetadataStore> BuildStoreWithSchemaFromM53(); | 228 std::unique_ptr<OfflinePageMetadataStore> BuildStoreWithSchemaFromM53(); |
229 std::unique_ptr<OfflinePageMetadataStore> BuildStoreWithSchemaFromM54(); | 229 std::unique_ptr<OfflinePageMetadataStore> BuildStoreWithSchemaFromM54(); |
230 | 230 |
231 void PumpLoop(); | 231 void PumpLoop(); |
232 | 232 |
233 void GetOfflinePagesCallback( | 233 void GetOfflinePagesCallback( |
234 OfflinePageMetadataStore::LoadStatus load_status, | 234 OfflinePageMetadataStore::LoadStatus load_status, |
235 const std::vector<OfflinePageItem>& offline_pages); | 235 const std::vector<OfflinePageItem>& offline_pages); |
| 236 void AddCallback(OfflinePageMetadataStore::ItemActionStatus status); |
236 void UpdateCallback(CalledCallback called_callback, bool success); | 237 void UpdateCallback(CalledCallback called_callback, bool success); |
237 | 238 |
238 void ClearResults(); | 239 void ClearResults(); |
239 | 240 |
240 OfflinePageItem CheckThatStoreHasOneItem(); | 241 OfflinePageItem CheckThatStoreHasOneItem(); |
241 void CheckThatOfflinePageCanBeSaved( | 242 void CheckThatOfflinePageCanBeSaved( |
242 std::unique_ptr<OfflinePageMetadataStore> store); | 243 std::unique_ptr<OfflinePageMetadataStore> store); |
243 | 244 |
244 protected: | 245 protected: |
245 CalledCallback last_called_callback_; | 246 CalledCallback last_called_callback_; |
(...skipping 22 matching lines...) Expand all Loading... |
268 | 269 |
269 void OfflinePageMetadataStoreTest::GetOfflinePagesCallback( | 270 void OfflinePageMetadataStoreTest::GetOfflinePagesCallback( |
270 OfflinePageMetadataStore::LoadStatus load_status, | 271 OfflinePageMetadataStore::LoadStatus load_status, |
271 const std::vector<OfflinePageItem>& offline_pages) { | 272 const std::vector<OfflinePageItem>& offline_pages) { |
272 last_called_callback_ = LOAD; | 273 last_called_callback_ = LOAD; |
273 last_status_ = load_status == OfflinePageMetadataStore::LOAD_SUCCEEDED ? | 274 last_status_ = load_status == OfflinePageMetadataStore::LOAD_SUCCEEDED ? |
274 STATUS_TRUE : STATUS_FALSE; | 275 STATUS_TRUE : STATUS_FALSE; |
275 offline_pages_.swap(const_cast<std::vector<OfflinePageItem>&>(offline_pages)); | 276 offline_pages_.swap(const_cast<std::vector<OfflinePageItem>&>(offline_pages)); |
276 } | 277 } |
277 | 278 |
| 279 void OfflinePageMetadataStoreTest::AddCallback( |
| 280 OfflinePageMetadataStore::ItemActionStatus status) { |
| 281 last_called_callback_ = ADD; |
| 282 // TODO(fgorski): Add specific add status. |
| 283 // last_item_status_ = status; |
| 284 last_status_ = |
| 285 status == OfflinePageMetadataStore::SUCCESS ? STATUS_TRUE : STATUS_FALSE; |
| 286 } |
| 287 |
278 void OfflinePageMetadataStoreTest::UpdateCallback( | 288 void OfflinePageMetadataStoreTest::UpdateCallback( |
279 CalledCallback called_callback, | 289 CalledCallback called_callback, |
280 bool status) { | 290 bool status) { |
281 last_called_callback_ = called_callback; | 291 last_called_callback_ = called_callback; |
282 last_status_ = status ? STATUS_TRUE : STATUS_FALSE; | 292 last_status_ = status ? STATUS_TRUE : STATUS_FALSE; |
283 } | 293 } |
284 | 294 |
285 void OfflinePageMetadataStoreTest::ClearResults() { | 295 void OfflinePageMetadataStoreTest::ClearResults() { |
286 last_called_callback_ = NONE; | 296 last_called_callback_ = NONE; |
287 last_status_ = STATUS_NONE; | 297 last_status_ = STATUS_NONE; |
(...skipping 10 matching lines...) Expand all Loading... |
298 | 308 |
299 void OfflinePageMetadataStoreTest::CheckThatOfflinePageCanBeSaved( | 309 void OfflinePageMetadataStoreTest::CheckThatOfflinePageCanBeSaved( |
300 std::unique_ptr<OfflinePageMetadataStore> store) { | 310 std::unique_ptr<OfflinePageMetadataStore> store) { |
301 size_t store_size = offline_pages_.size(); | 311 size_t store_size = offline_pages_.size(); |
302 OfflinePageItem offline_page(GURL(kTestURL), 1234LL, kTestClientId1, | 312 OfflinePageItem offline_page(GURL(kTestURL), 1234LL, kTestClientId1, |
303 base::FilePath(kFilePath), kFileSize); | 313 base::FilePath(kFilePath), kFileSize); |
304 offline_page.title = base::UTF8ToUTF16("a title"); | 314 offline_page.title = base::UTF8ToUTF16("a title"); |
305 base::Time expiration_time = base::Time::Now(); | 315 base::Time expiration_time = base::Time::Now(); |
306 offline_page.expiration_time = expiration_time; | 316 offline_page.expiration_time = expiration_time; |
307 | 317 |
308 store->AddOrUpdateOfflinePage( | 318 store->AddOfflinePage(offline_page, |
309 offline_page, base::Bind(&OfflinePageMetadataStoreTest::UpdateCallback, | 319 base::Bind(&OfflinePageMetadataStoreTest::AddCallback, |
310 base::Unretained(this), ADD)); | 320 base::Unretained(this))); |
311 PumpLoop(); | 321 PumpLoop(); |
312 EXPECT_EQ(ADD, last_called_callback_); | 322 EXPECT_EQ(ADD, last_called_callback_); |
313 EXPECT_EQ(STATUS_TRUE, last_status_); | 323 EXPECT_EQ(STATUS_TRUE, last_status_); |
314 ClearResults(); | 324 ClearResults(); |
315 | 325 |
316 // Close the store first to ensure file lock is removed. | 326 // Close the store first to ensure file lock is removed. |
317 store.reset(); | 327 store.reset(); |
318 store = BuildStore(); | 328 store = BuildStore(); |
319 PumpLoop(); | 329 PumpLoop(); |
320 | 330 |
(...skipping 117 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
438 } | 448 } |
439 | 449 |
440 // Tests removing offline page metadata from the store, for which it first adds | 450 // Tests removing offline page metadata from the store, for which it first adds |
441 // metadata of an offline page. | 451 // metadata of an offline page. |
442 TEST_F(OfflinePageMetadataStoreTest, RemoveOfflinePage) { | 452 TEST_F(OfflinePageMetadataStoreTest, RemoveOfflinePage) { |
443 std::unique_ptr<OfflinePageMetadataStore> store(BuildStore()); | 453 std::unique_ptr<OfflinePageMetadataStore> store(BuildStore()); |
444 | 454 |
445 // Add an offline page. | 455 // Add an offline page. |
446 OfflinePageItem offline_page(GURL(kTestURL), 1234LL, kTestClientId1, | 456 OfflinePageItem offline_page(GURL(kTestURL), 1234LL, kTestClientId1, |
447 base::FilePath(kFilePath), kFileSize); | 457 base::FilePath(kFilePath), kFileSize); |
448 store->AddOrUpdateOfflinePage( | 458 store->AddOfflinePage(offline_page, |
449 offline_page, base::Bind(&OfflinePageMetadataStoreTest::UpdateCallback, | 459 base::Bind(&OfflinePageMetadataStoreTest::AddCallback, |
450 base::Unretained(this), ADD)); | 460 base::Unretained(this))); |
451 PumpLoop(); | 461 PumpLoop(); |
452 EXPECT_EQ(ADD, last_called_callback_); | 462 EXPECT_EQ(ADD, last_called_callback_); |
453 EXPECT_EQ(STATUS_TRUE, last_status_); | 463 EXPECT_EQ(STATUS_TRUE, last_status_); |
454 | 464 |
455 ClearResults(); | 465 ClearResults(); |
456 | 466 |
457 // Load the store. | 467 // Load the store. |
458 store->GetOfflinePages( | 468 store->GetOfflinePages( |
459 base::Bind(&OfflinePageMetadataStoreTest::GetOfflinePagesCallback, | 469 base::Bind(&OfflinePageMetadataStoreTest::GetOfflinePagesCallback, |
460 base::Unretained(this))); | 470 base::Unretained(this))); |
(...skipping 37 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
498 | 508 |
499 // Add an offline page. | 509 // Add an offline page. |
500 OfflinePageItem offline_page_1(GURL(kTestURL), 12345LL, kTestClientId1, | 510 OfflinePageItem offline_page_1(GURL(kTestURL), 12345LL, kTestClientId1, |
501 base::FilePath(kFilePath), kFileSize); | 511 base::FilePath(kFilePath), kFileSize); |
502 base::FilePath file_path_2 = | 512 base::FilePath file_path_2 = |
503 base::FilePath(FILE_PATH_LITERAL("//other.page.com.mhtml")); | 513 base::FilePath(FILE_PATH_LITERAL("//other.page.com.mhtml")); |
504 OfflinePageItem offline_page_2(GURL("https://other.page.com"), 5678LL, | 514 OfflinePageItem offline_page_2(GURL("https://other.page.com"), 5678LL, |
505 kTestClientId2, file_path_2, 12345, | 515 kTestClientId2, file_path_2, 12345, |
506 base::Time::Now()); | 516 base::Time::Now()); |
507 offline_page_2.expiration_time = base::Time::Now(); | 517 offline_page_2.expiration_time = base::Time::Now(); |
508 store->AddOrUpdateOfflinePage( | 518 store->AddOfflinePage(offline_page_1, |
509 offline_page_1, base::Bind(&OfflinePageMetadataStoreTest::UpdateCallback, | 519 base::Bind(&OfflinePageMetadataStoreTest::AddCallback, |
510 base::Unretained(this), ADD)); | 520 base::Unretained(this))); |
511 PumpLoop(); | 521 PumpLoop(); |
512 EXPECT_EQ(ADD, last_called_callback_); | 522 EXPECT_EQ(ADD, last_called_callback_); |
513 EXPECT_EQ(STATUS_TRUE, last_status_); | 523 EXPECT_EQ(STATUS_TRUE, last_status_); |
514 | 524 |
515 ClearResults(); | 525 ClearResults(); |
516 | 526 |
517 // Add anther offline page. | 527 // Add anther offline page. |
518 store->AddOrUpdateOfflinePage( | 528 store->AddOfflinePage(offline_page_2, |
519 offline_page_2, base::Bind(&OfflinePageMetadataStoreTest::UpdateCallback, | 529 base::Bind(&OfflinePageMetadataStoreTest::AddCallback, |
520 base::Unretained(this), ADD)); | 530 base::Unretained(this))); |
521 PumpLoop(); | 531 PumpLoop(); |
522 EXPECT_EQ(ADD, last_called_callback_); | 532 EXPECT_EQ(ADD, last_called_callback_); |
523 EXPECT_EQ(STATUS_TRUE, last_status_); | 533 EXPECT_EQ(STATUS_TRUE, last_status_); |
524 | 534 |
525 ClearResults(); | 535 ClearResults(); |
526 | 536 |
527 // Load the store. | 537 // Load the store. |
528 store->GetOfflinePages( | 538 store->GetOfflinePages( |
529 base::Bind(&OfflinePageMetadataStoreTest::GetOfflinePagesCallback, | 539 base::Bind(&OfflinePageMetadataStoreTest::GetOfflinePagesCallback, |
530 base::Unretained(this))); | 540 base::Unretained(this))); |
(...skipping 38 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
569 EXPECT_EQ(offline_page_2.client_id, offline_pages_[0].client_id); | 579 EXPECT_EQ(offline_page_2.client_id, offline_pages_[0].client_id); |
570 } | 580 } |
571 | 581 |
572 // Tests updating offline page metadata from the store. | 582 // Tests updating offline page metadata from the store. |
573 TEST_F(OfflinePageMetadataStoreTest, UpdateOfflinePage) { | 583 TEST_F(OfflinePageMetadataStoreTest, UpdateOfflinePage) { |
574 std::unique_ptr<OfflinePageMetadataStore> store(BuildStore()); | 584 std::unique_ptr<OfflinePageMetadataStore> store(BuildStore()); |
575 | 585 |
576 // First, adds a fresh page. | 586 // First, adds a fresh page. |
577 OfflinePageItem offline_page(GURL(kTestURL), 1234LL, kTestClientId1, | 587 OfflinePageItem offline_page(GURL(kTestURL), 1234LL, kTestClientId1, |
578 base::FilePath(kFilePath), kFileSize); | 588 base::FilePath(kFilePath), kFileSize); |
579 store->AddOrUpdateOfflinePage( | 589 store->AddOfflinePage(offline_page, |
580 offline_page, base::Bind(&OfflinePageMetadataStoreTest::UpdateCallback, | 590 base::Bind(&OfflinePageMetadataStoreTest::AddCallback, |
581 base::Unretained(this), ADD)); | 591 base::Unretained(this))); |
582 PumpLoop(); | 592 PumpLoop(); |
583 EXPECT_EQ(ADD, last_called_callback_); | 593 EXPECT_EQ(ADD, last_called_callback_); |
584 EXPECT_EQ(STATUS_TRUE, last_status_); | 594 EXPECT_EQ(STATUS_TRUE, last_status_); |
585 | 595 |
586 ClearResults(); | 596 ClearResults(); |
587 store->GetOfflinePages( | 597 store->GetOfflinePages( |
588 base::Bind(&OfflinePageMetadataStoreTest::GetOfflinePagesCallback, | 598 base::Bind(&OfflinePageMetadataStoreTest::GetOfflinePagesCallback, |
589 base::Unretained(this))); | 599 base::Unretained(this))); |
590 PumpLoop(); | 600 PumpLoop(); |
591 | 601 |
592 EXPECT_EQ(LOAD, last_called_callback_); | 602 EXPECT_EQ(LOAD, last_called_callback_); |
593 EXPECT_EQ(STATUS_TRUE, last_status_); | 603 EXPECT_EQ(STATUS_TRUE, last_status_); |
594 ASSERT_EQ(1U, offline_pages_.size()); | 604 ASSERT_EQ(1U, offline_pages_.size()); |
595 EXPECT_EQ(offline_page.url, offline_pages_[0].url); | 605 EXPECT_EQ(offline_page.url, offline_pages_[0].url); |
596 EXPECT_EQ(offline_page.offline_id, offline_pages_[0].offline_id); | 606 EXPECT_EQ(offline_page.offline_id, offline_pages_[0].offline_id); |
597 EXPECT_EQ(offline_page.file_path, offline_pages_[0].file_path); | 607 EXPECT_EQ(offline_page.file_path, offline_pages_[0].file_path); |
598 EXPECT_EQ(offline_page.file_size, offline_pages_[0].file_size); | 608 EXPECT_EQ(offline_page.file_size, offline_pages_[0].file_size); |
599 EXPECT_EQ(offline_page.creation_time, offline_pages_[0].creation_time); | 609 EXPECT_EQ(offline_page.creation_time, offline_pages_[0].creation_time); |
600 EXPECT_EQ(offline_page.last_access_time, offline_pages_[0].last_access_time); | 610 EXPECT_EQ(offline_page.last_access_time, offline_pages_[0].last_access_time); |
601 EXPECT_EQ(offline_page.expiration_time, offline_pages_[0].expiration_time); | 611 EXPECT_EQ(offline_page.expiration_time, offline_pages_[0].expiration_time); |
602 EXPECT_EQ(offline_page.access_count, offline_pages_[0].access_count); | 612 EXPECT_EQ(offline_page.access_count, offline_pages_[0].access_count); |
603 EXPECT_EQ(offline_page.client_id, offline_pages_[0].client_id); | 613 EXPECT_EQ(offline_page.client_id, offline_pages_[0].client_id); |
604 | 614 |
605 // Then update some data. | 615 // Then update some data. |
606 offline_page.file_size = kFileSize + 1; | 616 offline_page.file_size = kFileSize + 1; |
607 offline_page.access_count++; | 617 offline_page.access_count++; |
608 offline_page.expiration_time = base::Time::Now(); | 618 offline_page.expiration_time = base::Time::Now(); |
609 store->AddOrUpdateOfflinePage( | 619 std::vector<OfflinePageItem> items_to_update; |
610 offline_page, base::Bind(&OfflinePageMetadataStoreTest::UpdateCallback, | 620 items_to_update.push_back(offline_page); |
611 base::Unretained(this), ADD)); | 621 store->UpdateOfflinePages( |
| 622 items_to_update, base::Bind(&OfflinePageMetadataStoreTest::UpdateCallback, |
| 623 base::Unretained(this), UPDATE)); |
612 PumpLoop(); | 624 PumpLoop(); |
613 EXPECT_EQ(ADD, last_called_callback_); | 625 EXPECT_EQ(UPDATE, last_called_callback_); |
614 EXPECT_EQ(STATUS_TRUE, last_status_); | 626 EXPECT_EQ(STATUS_TRUE, last_status_); |
615 | 627 |
616 ClearResults(); | 628 ClearResults(); |
617 store->GetOfflinePages( | 629 store->GetOfflinePages( |
618 base::Bind(&OfflinePageMetadataStoreTest::GetOfflinePagesCallback, | 630 base::Bind(&OfflinePageMetadataStoreTest::GetOfflinePagesCallback, |
619 base::Unretained(this))); | 631 base::Unretained(this))); |
620 PumpLoop(); | 632 PumpLoop(); |
621 | 633 |
622 EXPECT_EQ(LOAD, last_called_callback_); | 634 EXPECT_EQ(LOAD, last_called_callback_); |
623 EXPECT_EQ(STATUS_TRUE, last_status_); | 635 EXPECT_EQ(STATUS_TRUE, last_status_); |
624 ASSERT_EQ(1U, offline_pages_.size()); | 636 ASSERT_EQ(1U, offline_pages_.size()); |
625 EXPECT_EQ(offline_page.url, offline_pages_[0].url); | 637 EXPECT_EQ(offline_page.url, offline_pages_[0].url); |
626 EXPECT_EQ(offline_page.offline_id, offline_pages_[0].offline_id); | 638 EXPECT_EQ(offline_page.offline_id, offline_pages_[0].offline_id); |
627 EXPECT_EQ(offline_page.file_path, offline_pages_[0].file_path); | 639 EXPECT_EQ(offline_page.file_path, offline_pages_[0].file_path); |
628 EXPECT_EQ(offline_page.file_size, offline_pages_[0].file_size); | 640 EXPECT_EQ(offline_page.file_size, offline_pages_[0].file_size); |
629 EXPECT_EQ(offline_page.creation_time, offline_pages_[0].creation_time); | 641 EXPECT_EQ(offline_page.creation_time, offline_pages_[0].creation_time); |
630 EXPECT_EQ(offline_page.last_access_time, offline_pages_[0].last_access_time); | 642 EXPECT_EQ(offline_page.last_access_time, offline_pages_[0].last_access_time); |
631 EXPECT_EQ(offline_page.expiration_time, offline_pages_[0].expiration_time); | 643 EXPECT_EQ(offline_page.expiration_time, offline_pages_[0].expiration_time); |
632 EXPECT_EQ(offline_page.access_count, offline_pages_[0].access_count); | 644 EXPECT_EQ(offline_page.access_count, offline_pages_[0].access_count); |
633 EXPECT_EQ(offline_page.client_id, offline_pages_[0].client_id); | 645 EXPECT_EQ(offline_page.client_id, offline_pages_[0].client_id); |
634 } | 646 } |
635 | 647 |
636 TEST_F(OfflinePageMetadataStoreTest, ClearAllOfflinePages) { | 648 TEST_F(OfflinePageMetadataStoreTest, ClearAllOfflinePages) { |
637 std::unique_ptr<OfflinePageMetadataStore> store(BuildStore()); | 649 std::unique_ptr<OfflinePageMetadataStore> store(BuildStore()); |
638 | 650 |
639 // Add 2 offline pages. | 651 // Add 2 offline pages. |
640 OfflinePageItem offline_page(GURL(kTestURL), 1234LL, kTestClientId1, | 652 OfflinePageItem offline_page(GURL(kTestURL), 1234LL, kTestClientId1, |
641 base::FilePath(kFilePath), kFileSize); | 653 base::FilePath(kFilePath), kFileSize); |
642 store->AddOrUpdateOfflinePage( | 654 store->AddOfflinePage(offline_page, |
643 offline_page, base::Bind(&OfflinePageMetadataStoreTest::UpdateCallback, | 655 base::Bind(&OfflinePageMetadataStoreTest::AddCallback, |
644 base::Unretained(this), ADD)); | 656 base::Unretained(this))); |
645 PumpLoop(); | 657 PumpLoop(); |
646 EXPECT_EQ(ADD, last_called_callback_); | 658 EXPECT_EQ(ADD, last_called_callback_); |
647 EXPECT_EQ(STATUS_TRUE, last_status_); | 659 EXPECT_EQ(STATUS_TRUE, last_status_); |
648 | 660 |
649 ClearResults(); | 661 ClearResults(); |
650 | 662 |
651 OfflinePageItem offline_page2(GURL("http://test.com"), 5678LL, kTestClientId2, | 663 OfflinePageItem offline_page2(GURL("http://test.com"), 5678LL, kTestClientId2, |
652 base::FilePath(kFilePath), kFileSize); | 664 base::FilePath(kFilePath), kFileSize); |
653 store->AddOrUpdateOfflinePage( | 665 store->AddOfflinePage(offline_page2, |
654 offline_page2, base::Bind(&OfflinePageMetadataStoreTest::UpdateCallback, | 666 base::Bind(&OfflinePageMetadataStoreTest::AddCallback, |
655 base::Unretained(this), ADD)); | 667 base::Unretained(this))); |
656 PumpLoop(); | 668 PumpLoop(); |
657 EXPECT_EQ(ADD, last_called_callback_); | 669 EXPECT_EQ(ADD, last_called_callback_); |
658 EXPECT_EQ(STATUS_TRUE, last_status_); | 670 EXPECT_EQ(STATUS_TRUE, last_status_); |
659 | 671 |
660 ClearResults(); | 672 ClearResults(); |
661 | 673 |
662 // Load the store. | 674 // Load the store. |
663 store->GetOfflinePages( | 675 store->GetOfflinePages( |
664 base::Bind(&OfflinePageMetadataStoreTest::GetOfflinePagesCallback, | 676 base::Bind(&OfflinePageMetadataStoreTest::GetOfflinePagesCallback, |
665 base::Unretained(this))); | 677 base::Unretained(this))); |
(...skipping 16 matching lines...) Expand all Loading... |
682 base::Unretained(this))); | 694 base::Unretained(this))); |
683 PumpLoop(); | 695 PumpLoop(); |
684 | 696 |
685 EXPECT_EQ(LOAD, last_called_callback_); | 697 EXPECT_EQ(LOAD, last_called_callback_); |
686 EXPECT_EQ(STATUS_TRUE, last_status_); | 698 EXPECT_EQ(STATUS_TRUE, last_status_); |
687 ASSERT_EQ(0U, offline_pages_.size()); | 699 ASSERT_EQ(0U, offline_pages_.size()); |
688 } | 700 } |
689 | 701 |
690 } // namespace | 702 } // namespace |
691 } // namespace offline_pages | 703 } // namespace offline_pages |
OLD | NEW |