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

Side by Side Diff: components/offline_pages/offline_page_metadata_store_impl_unittest.cc

Issue 2329283002: [Offline pages] OPM SQL store: moving load to constructor, updating read to GetOfflinePages (Closed)
Patch Set: Addressing CR feedback Created 4 years, 3 months 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 unified diff | Download patch
OLDNEW
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 112 matching lines...) Expand 10 before | Expand all | Expand 10 after
123 statement.BindCString(8, kTestURL); 123 statement.BindCString(8, kTestURL);
124 statement.BindString(9, base::FilePath(kFilePath).MaybeAsASCII()); 124 statement.BindString(9, base::FilePath(kFilePath).MaybeAsASCII());
125 statement.BindInt64(10, base::Time::Now().ToInternalValue()); 125 statement.BindInt64(10, base::Time::Now().ToInternalValue());
126 ASSERT_TRUE(statement.Run()); 126 ASSERT_TRUE(statement.Run());
127 ASSERT_TRUE(connection.DoesTableExist(OFFLINE_PAGES_TABLE_V1)); 127 ASSERT_TRUE(connection.DoesTableExist(OFFLINE_PAGES_TABLE_V1));
128 ASSERT_FALSE(connection.DoesColumnExist(OFFLINE_PAGES_TABLE_V1, "title")); 128 ASSERT_FALSE(connection.DoesColumnExist(OFFLINE_PAGES_TABLE_V1, "title"));
129 } 129 }
130 130
131 class OfflinePageMetadataStoreFactory { 131 class OfflinePageMetadataStoreFactory {
132 public: 132 public:
133 OfflinePageMetadataStore* BuildStore(const base::FilePath& file) { 133 OfflinePageMetadataStore* BuildStore(const base::FilePath& file_path) {
134 OfflinePageMetadataStoreSQL* store = new OfflinePageMetadataStoreSQL( 134 OfflinePageMetadataStoreSQL* store = new OfflinePageMetadataStoreSQL(
135 base::ThreadTaskRunnerHandle::Get(), file); 135 base::ThreadTaskRunnerHandle::Get(), file_path);
136 return store; 136 return store;
137 } 137 }
138 138
139 OfflinePageMetadataStore* BuildStoreM52(const base::FilePath& file) { 139 OfflinePageMetadataStore* BuildStoreM52(const base::FilePath& file_path) {
140 BuildTestStoreWithSchemaFromM52(file); 140 BuildTestStoreWithSchemaFromM52(file_path);
141 OfflinePageMetadataStoreSQL* store = new OfflinePageMetadataStoreSQL( 141 OfflinePageMetadataStoreSQL* store = new OfflinePageMetadataStoreSQL(
142 base::ThreadTaskRunnerHandle::Get(), file); 142 base::ThreadTaskRunnerHandle::Get(), file_path);
143 return store; 143 return store;
144 } 144 }
145 145
146 OfflinePageMetadataStore* BuildStoreM53(const base::FilePath& file) { 146 OfflinePageMetadataStore* BuildStoreM53(const base::FilePath& file_path) {
147 BuildTestStoreWithSchemaFromM53(file); 147 BuildTestStoreWithSchemaFromM53(file_path);
148 OfflinePageMetadataStoreSQL* store = new OfflinePageMetadataStoreSQL( 148 OfflinePageMetadataStoreSQL* store = new OfflinePageMetadataStoreSQL(
149 base::ThreadTaskRunnerHandle::Get(), file); 149 base::ThreadTaskRunnerHandle::Get(), file_path);
150 return store; 150 return store;
151 } 151 }
152 }; 152 };
153 153
154 enum CalledCallback { NONE, LOAD, ADD, REMOVE, RESET }; 154 enum CalledCallback { NONE, LOAD, ADD, REMOVE, RESET };
155 enum Status { STATUS_NONE, STATUS_TRUE, STATUS_FALSE }; 155 enum Status { STATUS_NONE, STATUS_TRUE, STATUS_FALSE };
156 156
157 class OfflinePageMetadataStoreTest : public testing::Test { 157 class OfflinePageMetadataStoreTest : public testing::Test {
158 public: 158 public:
159 OfflinePageMetadataStoreTest(); 159 OfflinePageMetadataStoreTest();
160 ~OfflinePageMetadataStoreTest() override; 160 ~OfflinePageMetadataStoreTest() override;
161 161
162 void TearDown() override { 162 void TearDown() override {
163 // Wait for all the pieces of the store to delete itself properly. 163 // Wait for all the pieces of the store to delete itself properly.
164 PumpLoop(); 164 PumpLoop();
165 } 165 }
166 166
167 std::unique_ptr<OfflinePageMetadataStore> BuildStore(); 167 std::unique_ptr<OfflinePageMetadataStore> BuildStore();
168 std::unique_ptr<OfflinePageMetadataStore> BuildStoreWithSchemaFromM52(); 168 std::unique_ptr<OfflinePageMetadataStore> BuildStoreWithSchemaFromM52();
169 std::unique_ptr<OfflinePageMetadataStore> BuildStoreWithSchemaFromM53(); 169 std::unique_ptr<OfflinePageMetadataStore> BuildStoreWithSchemaFromM53();
170 170
171 void PumpLoop(); 171 void PumpLoop();
172 172
173 void LoadCallback(OfflinePageMetadataStore::LoadStatus load_status, 173 void GetOfflinePagesCallback(
174 const std::vector<OfflinePageItem>& offline_pages); 174 OfflinePageMetadataStore::LoadStatus load_status,
175 const std::vector<OfflinePageItem>& offline_pages);
175 void UpdateCallback(CalledCallback called_callback, bool success); 176 void UpdateCallback(CalledCallback called_callback, bool success);
176 177
177 void ClearResults(); 178 void ClearResults();
178 179
179 OfflinePageItem CheckThatStoreHasOneItem(); 180 OfflinePageItem CheckThatStoreHasOneItem();
180 void CheckThatOfflinePageCanBeSaved( 181 void CheckThatOfflinePageCanBeSaved(
181 std::unique_ptr<OfflinePageMetadataStore> store); 182 std::unique_ptr<OfflinePageMetadataStore> store);
182 183
183 protected: 184 protected:
184 CalledCallback last_called_callback_; 185 CalledCallback last_called_callback_;
(...skipping 13 matching lines...) Expand all
198 task_runner_handle_(task_runner_) { 199 task_runner_handle_(task_runner_) {
199 EXPECT_TRUE(temp_directory_.CreateUniqueTempDir()); 200 EXPECT_TRUE(temp_directory_.CreateUniqueTempDir());
200 } 201 }
201 202
202 OfflinePageMetadataStoreTest::~OfflinePageMetadataStoreTest() {} 203 OfflinePageMetadataStoreTest::~OfflinePageMetadataStoreTest() {}
203 204
204 void OfflinePageMetadataStoreTest::PumpLoop() { 205 void OfflinePageMetadataStoreTest::PumpLoop() {
205 task_runner_->RunUntilIdle(); 206 task_runner_->RunUntilIdle();
206 } 207 }
207 208
208 void OfflinePageMetadataStoreTest::LoadCallback( 209 void OfflinePageMetadataStoreTest::GetOfflinePagesCallback(
209 OfflinePageMetadataStore::LoadStatus load_status, 210 OfflinePageMetadataStore::LoadStatus load_status,
210 const std::vector<OfflinePageItem>& offline_pages) { 211 const std::vector<OfflinePageItem>& offline_pages) {
211 last_called_callback_ = LOAD; 212 last_called_callback_ = LOAD;
212 last_status_ = load_status == OfflinePageMetadataStore::LOAD_SUCCEEDED ? 213 last_status_ = load_status == OfflinePageMetadataStore::LOAD_SUCCEEDED ?
213 STATUS_TRUE : STATUS_FALSE; 214 STATUS_TRUE : STATUS_FALSE;
214 offline_pages_.swap(const_cast<std::vector<OfflinePageItem>&>(offline_pages)); 215 offline_pages_.swap(const_cast<std::vector<OfflinePageItem>&>(offline_pages));
215 } 216 }
216 217
217 void OfflinePageMetadataStoreTest::UpdateCallback( 218 void OfflinePageMetadataStoreTest::UpdateCallback(
218 CalledCallback called_callback, 219 CalledCallback called_callback,
(...skipping 54 matching lines...) Expand 10 before | Expand all | Expand 10 after
273 EXPECT_EQ(offline_page.client_id, offline_pages_[0].client_id); 274 EXPECT_EQ(offline_page.client_id, offline_pages_[0].client_id);
274 EXPECT_EQ(1234LL, offline_pages_[0].offline_id); 275 EXPECT_EQ(1234LL, offline_pages_[0].offline_id);
275 EXPECT_EQ(kFileSize, offline_pages_[0].file_size); 276 EXPECT_EQ(kFileSize, offline_pages_[0].file_size);
276 EXPECT_EQ(kTestClientId1, offline_pages_[0].client_id); 277 EXPECT_EQ(kTestClientId1, offline_pages_[0].client_id);
277 } 278 }
278 279
279 std::unique_ptr<OfflinePageMetadataStore> 280 std::unique_ptr<OfflinePageMetadataStore>
280 OfflinePageMetadataStoreTest::BuildStore() { 281 OfflinePageMetadataStoreTest::BuildStore() {
281 std::unique_ptr<OfflinePageMetadataStore> store( 282 std::unique_ptr<OfflinePageMetadataStore> store(
282 factory_.BuildStore(temp_directory_.path())); 283 factory_.BuildStore(temp_directory_.path()));
283 store->Load(base::Bind(&OfflinePageMetadataStoreTest::LoadCallback, 284 store->GetOfflinePages(
284 base::Unretained(this))); 285 base::Bind(&OfflinePageMetadataStoreTest::GetOfflinePagesCallback,
286 base::Unretained(this)));
285 PumpLoop(); 287 PumpLoop();
286 return store; 288 return store;
287 } 289 }
288 290
289 std::unique_ptr<OfflinePageMetadataStore> 291 std::unique_ptr<OfflinePageMetadataStore>
290 OfflinePageMetadataStoreTest::BuildStoreWithSchemaFromM52() { 292 OfflinePageMetadataStoreTest::BuildStoreWithSchemaFromM52() {
291 std::unique_ptr<OfflinePageMetadataStore> store( 293 std::unique_ptr<OfflinePageMetadataStore> store(
292 factory_.BuildStoreM52(temp_directory_.path())); 294 factory_.BuildStoreM52(temp_directory_.path()));
293 store->Load(base::Bind(&OfflinePageMetadataStoreTest::LoadCallback, 295 store->GetOfflinePages(
294 base::Unretained(this))); 296 base::Bind(&OfflinePageMetadataStoreTest::GetOfflinePagesCallback,
297 base::Unretained(this)));
295 PumpLoop(); 298 PumpLoop();
296 return store; 299 return store;
297 } 300 }
298 301
299 std::unique_ptr<OfflinePageMetadataStore> 302 std::unique_ptr<OfflinePageMetadataStore>
300 OfflinePageMetadataStoreTest::BuildStoreWithSchemaFromM53() { 303 OfflinePageMetadataStoreTest::BuildStoreWithSchemaFromM53() {
301 std::unique_ptr<OfflinePageMetadataStore> store( 304 std::unique_ptr<OfflinePageMetadataStore> store(
302 factory_.BuildStoreM53(temp_directory_.path())); 305 factory_.BuildStoreM53(temp_directory_.path()));
303 store->Load(base::Bind(&OfflinePageMetadataStoreTest::LoadCallback, 306 store->GetOfflinePages(
304 base::Unretained(this))); 307 base::Bind(&OfflinePageMetadataStoreTest::GetOfflinePagesCallback,
308 base::Unretained(this)));
305 PumpLoop(); 309 PumpLoop();
306 return store; 310 return store;
307 } 311 }
308 312
309 // Loads empty store and makes sure that there are no offline pages stored in 313 // Loads empty store and makes sure that there are no offline pages stored in
310 // it. 314 // it.
311 TEST_F(OfflinePageMetadataStoreTest, LoadEmptyStore) { 315 TEST_F(OfflinePageMetadataStoreTest, LoadEmptyStore) {
312 std::unique_ptr<OfflinePageMetadataStore> store(BuildStore()); 316 std::unique_ptr<OfflinePageMetadataStore> store(BuildStore());
313 EXPECT_EQ(LOAD, last_called_callback_); 317 EXPECT_EQ(LOAD, last_called_callback_);
314 EXPECT_EQ(STATUS_TRUE, last_status_); 318 EXPECT_EQ(STATUS_TRUE, last_status_);
(...skipping 45 matching lines...) Expand 10 before | Expand all | Expand 10 after
360 store->AddOrUpdateOfflinePage( 364 store->AddOrUpdateOfflinePage(
361 offline_page, base::Bind(&OfflinePageMetadataStoreTest::UpdateCallback, 365 offline_page, base::Bind(&OfflinePageMetadataStoreTest::UpdateCallback,
362 base::Unretained(this), ADD)); 366 base::Unretained(this), ADD));
363 PumpLoop(); 367 PumpLoop();
364 EXPECT_EQ(ADD, last_called_callback_); 368 EXPECT_EQ(ADD, last_called_callback_);
365 EXPECT_EQ(STATUS_TRUE, last_status_); 369 EXPECT_EQ(STATUS_TRUE, last_status_);
366 370
367 ClearResults(); 371 ClearResults();
368 372
369 // Load the store. 373 // Load the store.
370 store->Load(base::Bind(&OfflinePageMetadataStoreTest::LoadCallback, 374 store->GetOfflinePages(
371 base::Unretained(this))); 375 base::Bind(&OfflinePageMetadataStoreTest::GetOfflinePagesCallback,
376 base::Unretained(this)));
372 PumpLoop(); 377 PumpLoop();
373 EXPECT_EQ(LOAD, last_called_callback_); 378 EXPECT_EQ(LOAD, last_called_callback_);
374 EXPECT_EQ(1U, offline_pages_.size()); 379 EXPECT_EQ(1U, offline_pages_.size());
375 380
376 // Remove the offline page. 381 // Remove the offline page.
377 std::vector<int64_t> ids_to_remove; 382 std::vector<int64_t> ids_to_remove;
378 ids_to_remove.push_back(offline_page.offline_id); 383 ids_to_remove.push_back(offline_page.offline_id);
379 store->RemoveOfflinePages( 384 store->RemoveOfflinePages(
380 ids_to_remove, base::Bind(&OfflinePageMetadataStoreTest::UpdateCallback, 385 ids_to_remove, base::Bind(&OfflinePageMetadataStoreTest::UpdateCallback,
381 base::Unretained(this), REMOVE)); 386 base::Unretained(this), REMOVE));
382 PumpLoop(); 387 PumpLoop();
383 EXPECT_EQ(REMOVE, last_called_callback_); 388 EXPECT_EQ(REMOVE, last_called_callback_);
384 EXPECT_EQ(STATUS_TRUE, last_status_); 389 EXPECT_EQ(STATUS_TRUE, last_status_);
385 390
386 ClearResults(); 391 ClearResults();
387 392
388 // Load the store. 393 // Load the store.
389 store->Load(base::Bind(&OfflinePageMetadataStoreTest::LoadCallback, 394 store->GetOfflinePages(
390 base::Unretained(this))); 395 base::Bind(&OfflinePageMetadataStoreTest::GetOfflinePagesCallback,
396 base::Unretained(this)));
391 PumpLoop(); 397 PumpLoop();
392 EXPECT_EQ(LOAD, last_called_callback_); 398 EXPECT_EQ(LOAD, last_called_callback_);
393 EXPECT_EQ(0U, offline_pages_.size()); 399 EXPECT_EQ(0U, offline_pages_.size());
394 400
395 ClearResults(); 401 ClearResults();
396 402
397 // Close and reload the store. 403 // Close and reload the store.
398 store.reset(); 404 store.reset();
399 store = BuildStore(); 405 store = BuildStore();
400 EXPECT_EQ(LOAD, last_called_callback_); 406 EXPECT_EQ(LOAD, last_called_callback_);
(...skipping 27 matching lines...) Expand all
428 store->AddOrUpdateOfflinePage( 434 store->AddOrUpdateOfflinePage(
429 offline_page_2, base::Bind(&OfflinePageMetadataStoreTest::UpdateCallback, 435 offline_page_2, base::Bind(&OfflinePageMetadataStoreTest::UpdateCallback,
430 base::Unretained(this), ADD)); 436 base::Unretained(this), ADD));
431 PumpLoop(); 437 PumpLoop();
432 EXPECT_EQ(ADD, last_called_callback_); 438 EXPECT_EQ(ADD, last_called_callback_);
433 EXPECT_EQ(STATUS_TRUE, last_status_); 439 EXPECT_EQ(STATUS_TRUE, last_status_);
434 440
435 ClearResults(); 441 ClearResults();
436 442
437 // Load the store. 443 // Load the store.
438 store->Load(base::Bind(&OfflinePageMetadataStoreTest::LoadCallback, 444 store->GetOfflinePages(
439 base::Unretained(this))); 445 base::Bind(&OfflinePageMetadataStoreTest::GetOfflinePagesCallback,
446 base::Unretained(this)));
440 PumpLoop(); 447 PumpLoop();
441 448
442 EXPECT_EQ(LOAD, last_called_callback_); 449 EXPECT_EQ(LOAD, last_called_callback_);
443 EXPECT_EQ(STATUS_TRUE, last_status_); 450 EXPECT_EQ(STATUS_TRUE, last_status_);
444 EXPECT_EQ(2U, offline_pages_.size()); 451 EXPECT_EQ(2U, offline_pages_.size());
445 452
446 // Remove the offline page. 453 // Remove the offline page.
447 std::vector<int64_t> ids_to_remove; 454 std::vector<int64_t> ids_to_remove;
448 ids_to_remove.push_back(offline_page_1.offline_id); 455 ids_to_remove.push_back(offline_page_1.offline_id);
449 store->RemoveOfflinePages( 456 store->RemoveOfflinePages(
450 ids_to_remove, base::Bind(&OfflinePageMetadataStoreTest::UpdateCallback, 457 ids_to_remove, base::Bind(&OfflinePageMetadataStoreTest::UpdateCallback,
451 base::Unretained(this), REMOVE)); 458 base::Unretained(this), REMOVE));
452 PumpLoop(); 459 PumpLoop();
453 EXPECT_EQ(REMOVE, last_called_callback_); 460 EXPECT_EQ(REMOVE, last_called_callback_);
454 EXPECT_EQ(STATUS_TRUE, last_status_); 461 EXPECT_EQ(STATUS_TRUE, last_status_);
455 462
456 ClearResults(); 463 ClearResults();
457 464
458 // Close and reload the store. 465 // Close and reload the store.
459 store.reset(); 466 store.reset();
460 store = BuildStore(); 467 store = BuildStore();
461 store->Load(base::Bind(&OfflinePageMetadataStoreTest::LoadCallback, 468 store->GetOfflinePages(
462 base::Unretained(this))); 469 base::Bind(&OfflinePageMetadataStoreTest::GetOfflinePagesCallback,
470 base::Unretained(this)));
463 PumpLoop(); 471 PumpLoop();
464 472
465 EXPECT_EQ(LOAD, last_called_callback_); 473 EXPECT_EQ(LOAD, last_called_callback_);
466 EXPECT_EQ(STATUS_TRUE, last_status_); 474 EXPECT_EQ(STATUS_TRUE, last_status_);
467 ASSERT_EQ(1U, offline_pages_.size()); 475 ASSERT_EQ(1U, offline_pages_.size());
468 EXPECT_EQ(offline_page_2.url, offline_pages_[0].url); 476 EXPECT_EQ(offline_page_2.url, offline_pages_[0].url);
469 EXPECT_EQ(offline_page_2.offline_id, offline_pages_[0].offline_id); 477 EXPECT_EQ(offline_page_2.offline_id, offline_pages_[0].offline_id);
470 EXPECT_EQ(offline_page_2.version, offline_pages_[0].version); 478 EXPECT_EQ(offline_page_2.version, offline_pages_[0].version);
471 EXPECT_EQ(offline_page_2.file_path, offline_pages_[0].file_path); 479 EXPECT_EQ(offline_page_2.file_path, offline_pages_[0].file_path);
472 EXPECT_EQ(offline_page_2.file_size, offline_pages_[0].file_size); 480 EXPECT_EQ(offline_page_2.file_size, offline_pages_[0].file_size);
(...skipping 13 matching lines...) Expand all
486 OfflinePageItem offline_page(GURL(kTestURL), 1234LL, kTestClientId1, 494 OfflinePageItem offline_page(GURL(kTestURL), 1234LL, kTestClientId1,
487 base::FilePath(kFilePath), kFileSize); 495 base::FilePath(kFilePath), kFileSize);
488 store->AddOrUpdateOfflinePage( 496 store->AddOrUpdateOfflinePage(
489 offline_page, base::Bind(&OfflinePageMetadataStoreTest::UpdateCallback, 497 offline_page, base::Bind(&OfflinePageMetadataStoreTest::UpdateCallback,
490 base::Unretained(this), ADD)); 498 base::Unretained(this), ADD));
491 PumpLoop(); 499 PumpLoop();
492 EXPECT_EQ(ADD, last_called_callback_); 500 EXPECT_EQ(ADD, last_called_callback_);
493 EXPECT_EQ(STATUS_TRUE, last_status_); 501 EXPECT_EQ(STATUS_TRUE, last_status_);
494 502
495 ClearResults(); 503 ClearResults();
496 store->Load(base::Bind(&OfflinePageMetadataStoreTest::LoadCallback, 504 store->GetOfflinePages(
497 base::Unretained(this))); 505 base::Bind(&OfflinePageMetadataStoreTest::GetOfflinePagesCallback,
506 base::Unretained(this)));
498 PumpLoop(); 507 PumpLoop();
499 508
500 EXPECT_EQ(LOAD, last_called_callback_); 509 EXPECT_EQ(LOAD, last_called_callback_);
501 EXPECT_EQ(STATUS_TRUE, last_status_); 510 EXPECT_EQ(STATUS_TRUE, last_status_);
502 ASSERT_EQ(1U, offline_pages_.size()); 511 ASSERT_EQ(1U, offline_pages_.size());
503 EXPECT_EQ(offline_page.url, offline_pages_[0].url); 512 EXPECT_EQ(offline_page.url, offline_pages_[0].url);
504 EXPECT_EQ(offline_page.offline_id, offline_pages_[0].offline_id); 513 EXPECT_EQ(offline_page.offline_id, offline_pages_[0].offline_id);
505 EXPECT_EQ(offline_page.version, offline_pages_[0].version); 514 EXPECT_EQ(offline_page.version, offline_pages_[0].version);
506 EXPECT_EQ(offline_page.file_path, offline_pages_[0].file_path); 515 EXPECT_EQ(offline_page.file_path, offline_pages_[0].file_path);
507 EXPECT_EQ(offline_page.file_size, offline_pages_[0].file_size); 516 EXPECT_EQ(offline_page.file_size, offline_pages_[0].file_size);
508 EXPECT_EQ(offline_page.creation_time, offline_pages_[0].creation_time); 517 EXPECT_EQ(offline_page.creation_time, offline_pages_[0].creation_time);
509 EXPECT_EQ(offline_page.last_access_time, offline_pages_[0].last_access_time); 518 EXPECT_EQ(offline_page.last_access_time, offline_pages_[0].last_access_time);
510 EXPECT_EQ(offline_page.expiration_time, offline_pages_[0].expiration_time); 519 EXPECT_EQ(offline_page.expiration_time, offline_pages_[0].expiration_time);
511 EXPECT_EQ(offline_page.access_count, offline_pages_[0].access_count); 520 EXPECT_EQ(offline_page.access_count, offline_pages_[0].access_count);
512 EXPECT_EQ(offline_page.client_id, offline_pages_[0].client_id); 521 EXPECT_EQ(offline_page.client_id, offline_pages_[0].client_id);
513 522
514 // Then update some data. 523 // Then update some data.
515 offline_page.file_size = kFileSize + 1; 524 offline_page.file_size = kFileSize + 1;
516 offline_page.access_count++; 525 offline_page.access_count++;
517 offline_page.expiration_time = base::Time::Now(); 526 offline_page.expiration_time = base::Time::Now();
518 store->AddOrUpdateOfflinePage( 527 store->AddOrUpdateOfflinePage(
519 offline_page, base::Bind(&OfflinePageMetadataStoreTest::UpdateCallback, 528 offline_page, base::Bind(&OfflinePageMetadataStoreTest::UpdateCallback,
520 base::Unretained(this), ADD)); 529 base::Unretained(this), ADD));
521 PumpLoop(); 530 PumpLoop();
522 EXPECT_EQ(ADD, last_called_callback_); 531 EXPECT_EQ(ADD, last_called_callback_);
523 EXPECT_EQ(STATUS_TRUE, last_status_); 532 EXPECT_EQ(STATUS_TRUE, last_status_);
524 533
525 ClearResults(); 534 ClearResults();
526 store->Load(base::Bind(&OfflinePageMetadataStoreTest::LoadCallback, 535 store->GetOfflinePages(
527 base::Unretained(this))); 536 base::Bind(&OfflinePageMetadataStoreTest::GetOfflinePagesCallback,
537 base::Unretained(this)));
528 PumpLoop(); 538 PumpLoop();
529 539
530 EXPECT_EQ(LOAD, last_called_callback_); 540 EXPECT_EQ(LOAD, last_called_callback_);
531 EXPECT_EQ(STATUS_TRUE, last_status_); 541 EXPECT_EQ(STATUS_TRUE, last_status_);
532 ASSERT_EQ(1U, offline_pages_.size()); 542 ASSERT_EQ(1U, offline_pages_.size());
533 EXPECT_EQ(offline_page.url, offline_pages_[0].url); 543 EXPECT_EQ(offline_page.url, offline_pages_[0].url);
534 EXPECT_EQ(offline_page.offline_id, offline_pages_[0].offline_id); 544 EXPECT_EQ(offline_page.offline_id, offline_pages_[0].offline_id);
535 EXPECT_EQ(offline_page.version, offline_pages_[0].version); 545 EXPECT_EQ(offline_page.version, offline_pages_[0].version);
536 EXPECT_EQ(offline_page.file_path, offline_pages_[0].file_path); 546 EXPECT_EQ(offline_page.file_path, offline_pages_[0].file_path);
537 EXPECT_EQ(offline_page.file_size, offline_pages_[0].file_size); 547 EXPECT_EQ(offline_page.file_size, offline_pages_[0].file_size);
(...skipping 24 matching lines...) Expand all
562 store->AddOrUpdateOfflinePage( 572 store->AddOrUpdateOfflinePage(
563 offline_page2, base::Bind(&OfflinePageMetadataStoreTest::UpdateCallback, 573 offline_page2, base::Bind(&OfflinePageMetadataStoreTest::UpdateCallback,
564 base::Unretained(this), ADD)); 574 base::Unretained(this), ADD));
565 PumpLoop(); 575 PumpLoop();
566 EXPECT_EQ(ADD, last_called_callback_); 576 EXPECT_EQ(ADD, last_called_callback_);
567 EXPECT_EQ(STATUS_TRUE, last_status_); 577 EXPECT_EQ(STATUS_TRUE, last_status_);
568 578
569 ClearResults(); 579 ClearResults();
570 580
571 // Load the store. 581 // Load the store.
572 store->Load(base::Bind(&OfflinePageMetadataStoreTest::LoadCallback, 582 store->GetOfflinePages(
573 base::Unretained(this))); 583 base::Bind(&OfflinePageMetadataStoreTest::GetOfflinePagesCallback,
584 base::Unretained(this)));
574 PumpLoop(); 585 PumpLoop();
575 586
576 EXPECT_EQ(LOAD, last_called_callback_); 587 EXPECT_EQ(LOAD, last_called_callback_);
577 EXPECT_EQ(STATUS_TRUE, last_status_); 588 EXPECT_EQ(STATUS_TRUE, last_status_);
578 EXPECT_EQ(2U, offline_pages_.size()); 589 EXPECT_EQ(2U, offline_pages_.size());
579 590
580 // Clear all records from the store. 591 // Clear all records from the store.
581 store->Reset(base::Bind(&OfflinePageMetadataStoreTest::UpdateCallback, 592 store->Reset(base::Bind(&OfflinePageMetadataStoreTest::UpdateCallback,
582 base::Unretained(this), RESET)); 593 base::Unretained(this), RESET));
583 PumpLoop(); 594 PumpLoop();
584 EXPECT_EQ(RESET, last_called_callback_); 595 EXPECT_EQ(RESET, last_called_callback_);
585 EXPECT_EQ(STATUS_TRUE, last_status_); 596 EXPECT_EQ(STATUS_TRUE, last_status_);
586 597
587 // Load the store. 598 // Load the store.
588 store->Load(base::Bind(&OfflinePageMetadataStoreTest::LoadCallback, 599 store->GetOfflinePages(
589 base::Unretained(this))); 600 base::Bind(&OfflinePageMetadataStoreTest::GetOfflinePagesCallback,
601 base::Unretained(this)));
590 PumpLoop(); 602 PumpLoop();
591 603
592 EXPECT_EQ(LOAD, last_called_callback_); 604 EXPECT_EQ(LOAD, last_called_callback_);
593 EXPECT_EQ(STATUS_TRUE, last_status_); 605 EXPECT_EQ(STATUS_TRUE, last_status_);
594 ASSERT_EQ(0U, offline_pages_.size()); 606 ASSERT_EQ(0U, offline_pages_.size());
595 } 607 }
596 608
597 } // namespace 609 } // namespace
598 } // namespace offline_pages 610 } // namespace offline_pages
OLDNEW
« no previous file with comments | « components/offline_pages/offline_page_metadata_store.h ('k') | components/offline_pages/offline_page_metadata_store_sql.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698