OLD | NEW |
1 // Copyright 2014 The Chromium Authors. All rights reserved. | 1 // Copyright 2014 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 "content/browser/service_worker/service_worker_database.h" | 5 #include "content/browser/service_worker/service_worker_database.h" |
6 | 6 |
7 #include <string> | 7 #include <string> |
8 | 8 |
9 #include "base/files/file_util.h" | 9 #include "base/files/file_util.h" |
10 #include "base/files/scoped_temp_dir.h" | 10 #include "base/files/scoped_temp_dir.h" |
(...skipping 373 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
384 } | 384 } |
385 | 385 |
386 TEST(ServiceWorkerDatabaseTest, GetRegistrationsForOrigin) { | 386 TEST(ServiceWorkerDatabaseTest, GetRegistrationsForOrigin) { |
387 scoped_ptr<ServiceWorkerDatabase> database(CreateDatabaseInMemory()); | 387 scoped_ptr<ServiceWorkerDatabase> database(CreateDatabaseInMemory()); |
388 | 388 |
389 GURL origin1("http://example.com"); | 389 GURL origin1("http://example.com"); |
390 GURL origin2("https://www.example.com"); | 390 GURL origin2("https://www.example.com"); |
391 GURL origin3("https://example.org"); | 391 GURL origin3("https://example.org"); |
392 | 392 |
393 std::vector<RegistrationData> registrations; | 393 std::vector<RegistrationData> registrations; |
| 394 std::vector<std::vector<Resource>> resource_lists; |
394 EXPECT_EQ(ServiceWorkerDatabase::STATUS_OK, | 395 EXPECT_EQ(ServiceWorkerDatabase::STATUS_OK, |
395 database->GetRegistrationsForOrigin(origin1, ®istrations)); | 396 database->GetRegistrationsForOrigin(origin1, ®istrations, |
| 397 &resource_lists)); |
396 EXPECT_TRUE(registrations.empty()); | 398 EXPECT_TRUE(registrations.empty()); |
397 | 399 |
398 std::vector<Resource> resources; | 400 std::vector<Resource> resources; |
399 ServiceWorkerDatabase::RegistrationData deleted_version; | 401 ServiceWorkerDatabase::RegistrationData deleted_version; |
400 std::vector<int64> newly_purgeable_resources; | 402 std::vector<int64> newly_purgeable_resources; |
401 | 403 |
402 RegistrationData data1; | 404 RegistrationData data1; |
403 data1.registration_id = 100; | 405 data1.registration_id = 100; |
404 data1.scope = URL(origin1, "/foo"); | 406 data1.scope = URL(origin1, "/foo"); |
405 data1.script = URL(origin1, "/script1.js"); | 407 data1.script = URL(origin1, "/script1.js"); |
(...skipping 29 matching lines...) Expand all Loading... |
435 data4.scope = URL(origin3, "/fuga"); | 437 data4.scope = URL(origin3, "/fuga"); |
436 data4.script = URL(origin3, "/script4.js"); | 438 data4.script = URL(origin3, "/script4.js"); |
437 data4.version_id = 4000; | 439 data4.version_id = 4000; |
438 ASSERT_EQ( | 440 ASSERT_EQ( |
439 ServiceWorkerDatabase::STATUS_OK, | 441 ServiceWorkerDatabase::STATUS_OK, |
440 database->WriteRegistration( | 442 database->WriteRegistration( |
441 data4, resources, &deleted_version, &newly_purgeable_resources)); | 443 data4, resources, &deleted_version, &newly_purgeable_resources)); |
442 | 444 |
443 registrations.clear(); | 445 registrations.clear(); |
444 EXPECT_EQ(ServiceWorkerDatabase::STATUS_OK, | 446 EXPECT_EQ(ServiceWorkerDatabase::STATUS_OK, |
445 database->GetRegistrationsForOrigin(origin3, ®istrations)); | 447 database->GetRegistrationsForOrigin(origin3, ®istrations, |
| 448 &resource_lists)); |
446 EXPECT_EQ(2U, registrations.size()); | 449 EXPECT_EQ(2U, registrations.size()); |
447 VerifyRegistrationData(data3, registrations[0]); | 450 VerifyRegistrationData(data3, registrations[0]); |
448 VerifyRegistrationData(data4, registrations[1]); | 451 VerifyRegistrationData(data4, registrations[1]); |
449 } | 452 } |
450 | 453 |
451 TEST(ServiceWorkerDatabaseTest, GetAllRegistrations) { | 454 TEST(ServiceWorkerDatabaseTest, GetAllRegistrations) { |
452 scoped_ptr<ServiceWorkerDatabase> database(CreateDatabaseInMemory()); | 455 scoped_ptr<ServiceWorkerDatabase> database(CreateDatabaseInMemory()); |
453 | 456 |
454 std::vector<RegistrationData> registrations; | 457 std::vector<RegistrationData> registrations; |
455 EXPECT_EQ(ServiceWorkerDatabase::STATUS_OK, | 458 EXPECT_EQ(ServiceWorkerDatabase::STATUS_OK, |
(...skipping 970 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1426 | 1429 |
1427 // |origin1| should be removed from the unique origin list. | 1430 // |origin1| should be removed from the unique origin list. |
1428 std::set<GURL> unique_origins; | 1431 std::set<GURL> unique_origins; |
1429 EXPECT_EQ(ServiceWorkerDatabase::STATUS_OK, | 1432 EXPECT_EQ(ServiceWorkerDatabase::STATUS_OK, |
1430 database->GetOriginsWithRegistrations(&unique_origins)); | 1433 database->GetOriginsWithRegistrations(&unique_origins)); |
1431 EXPECT_EQ(1u, unique_origins.size()); | 1434 EXPECT_EQ(1u, unique_origins.size()); |
1432 EXPECT_TRUE(ContainsKey(unique_origins, origin2)); | 1435 EXPECT_TRUE(ContainsKey(unique_origins, origin2)); |
1433 | 1436 |
1434 // The registrations for |origin1| should be removed. | 1437 // The registrations for |origin1| should be removed. |
1435 std::vector<RegistrationData> registrations; | 1438 std::vector<RegistrationData> registrations; |
| 1439 std::vector<std::vector<Resource>> resource_lists; |
1436 EXPECT_EQ(ServiceWorkerDatabase::STATUS_OK, | 1440 EXPECT_EQ(ServiceWorkerDatabase::STATUS_OK, |
1437 database->GetRegistrationsForOrigin(origin1, ®istrations)); | 1441 database->GetRegistrationsForOrigin(origin1, ®istrations, |
| 1442 &resource_lists)); |
1438 EXPECT_TRUE(registrations.empty()); | 1443 EXPECT_TRUE(registrations.empty()); |
1439 GURL origin_out; | 1444 GURL origin_out; |
1440 EXPECT_EQ( | 1445 EXPECT_EQ( |
1441 ServiceWorkerDatabase::STATUS_ERROR_NOT_FOUND, | 1446 ServiceWorkerDatabase::STATUS_ERROR_NOT_FOUND, |
1442 database->ReadRegistrationOrigin(data1.registration_id, &origin_out)); | 1447 database->ReadRegistrationOrigin(data1.registration_id, &origin_out)); |
1443 | 1448 |
1444 // The registration for |origin2| should not be removed. | 1449 // The registration for |origin2| should not be removed. |
1445 RegistrationData data_out; | 1450 RegistrationData data_out; |
1446 std::vector<Resource> resources_out; | 1451 std::vector<Resource> resources_out; |
1447 EXPECT_EQ(ServiceWorkerDatabase::STATUS_OK, database->ReadRegistration( | 1452 EXPECT_EQ(ServiceWorkerDatabase::STATUS_OK, database->ReadRegistration( |
(...skipping 48 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1496 CreateDatabase(database_dir.path())); | 1501 CreateDatabase(database_dir.path())); |
1497 | 1502 |
1498 EXPECT_EQ(ServiceWorkerDatabase::STATUS_OK, database->LazyOpen(true)); | 1503 EXPECT_EQ(ServiceWorkerDatabase::STATUS_OK, database->LazyOpen(true)); |
1499 ASSERT_TRUE(base::DirectoryExists(database_dir.path())); | 1504 ASSERT_TRUE(base::DirectoryExists(database_dir.path())); |
1500 | 1505 |
1501 EXPECT_EQ(ServiceWorkerDatabase::STATUS_OK, database->DestroyDatabase()); | 1506 EXPECT_EQ(ServiceWorkerDatabase::STATUS_OK, database->DestroyDatabase()); |
1502 ASSERT_FALSE(base::DirectoryExists(database_dir.path())); | 1507 ASSERT_FALSE(base::DirectoryExists(database_dir.path())); |
1503 } | 1508 } |
1504 | 1509 |
1505 } // namespace content | 1510 } // namespace content |
OLD | NEW |