| 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 EXPECT_EQ(ServiceWorkerDatabase::STATUS_OK, | 394 EXPECT_EQ( |
| 395 database->GetRegistrationsForOrigin(origin1, ®istrations)); | 395 ServiceWorkerDatabase::STATUS_OK, |
| 396 database->GetRegistrationsForOrigin(origin1, ®istrations, nullptr)); |
| 396 EXPECT_TRUE(registrations.empty()); | 397 EXPECT_TRUE(registrations.empty()); |
| 397 | 398 |
| 398 std::vector<Resource> resources; | 399 std::vector<Resource> resources; |
| 399 ServiceWorkerDatabase::RegistrationData deleted_version; | 400 ServiceWorkerDatabase::RegistrationData deleted_version; |
| 400 std::vector<int64> newly_purgeable_resources; | 401 std::vector<int64> newly_purgeable_resources; |
| 401 | 402 |
| 402 RegistrationData data1; | 403 RegistrationData data1; |
| 403 data1.registration_id = 100; | 404 data1.registration_id = 100; |
| 404 data1.scope = URL(origin1, "/foo"); | 405 data1.scope = URL(origin1, "/foo"); |
| 405 data1.script = URL(origin1, "/script1.js"); | 406 data1.script = URL(origin1, "/script1.js"); |
| (...skipping 28 matching lines...) Expand all Loading... |
| 434 data4.registration_id = 400; | 435 data4.registration_id = 400; |
| 435 data4.scope = URL(origin3, "/fuga"); | 436 data4.scope = URL(origin3, "/fuga"); |
| 436 data4.script = URL(origin3, "/script4.js"); | 437 data4.script = URL(origin3, "/script4.js"); |
| 437 data4.version_id = 4000; | 438 data4.version_id = 4000; |
| 438 ASSERT_EQ( | 439 ASSERT_EQ( |
| 439 ServiceWorkerDatabase::STATUS_OK, | 440 ServiceWorkerDatabase::STATUS_OK, |
| 440 database->WriteRegistration( | 441 database->WriteRegistration( |
| 441 data4, resources, &deleted_version, &newly_purgeable_resources)); | 442 data4, resources, &deleted_version, &newly_purgeable_resources)); |
| 442 | 443 |
| 443 registrations.clear(); | 444 registrations.clear(); |
| 444 EXPECT_EQ(ServiceWorkerDatabase::STATUS_OK, | 445 EXPECT_EQ( |
| 445 database->GetRegistrationsForOrigin(origin3, ®istrations)); | 446 ServiceWorkerDatabase::STATUS_OK, |
| 447 database->GetRegistrationsForOrigin(origin3, ®istrations, nullptr)); |
| 446 EXPECT_EQ(2U, registrations.size()); | 448 EXPECT_EQ(2U, registrations.size()); |
| 447 VerifyRegistrationData(data3, registrations[0]); | 449 VerifyRegistrationData(data3, registrations[0]); |
| 448 VerifyRegistrationData(data4, registrations[1]); | 450 VerifyRegistrationData(data4, registrations[1]); |
| 449 } | 451 } |
| 450 | 452 |
| 451 TEST(ServiceWorkerDatabaseTest, GetAllRegistrations) { | 453 TEST(ServiceWorkerDatabaseTest, GetAllRegistrations) { |
| 452 scoped_ptr<ServiceWorkerDatabase> database(CreateDatabaseInMemory()); | 454 scoped_ptr<ServiceWorkerDatabase> database(CreateDatabaseInMemory()); |
| 453 | 455 |
| 454 std::vector<RegistrationData> registrations; | 456 std::vector<RegistrationData> registrations; |
| 455 EXPECT_EQ(ServiceWorkerDatabase::STATUS_OK, | 457 EXPECT_EQ(ServiceWorkerDatabase::STATUS_OK, |
| (...skipping 970 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1426 | 1428 |
| 1427 // |origin1| should be removed from the unique origin list. | 1429 // |origin1| should be removed from the unique origin list. |
| 1428 std::set<GURL> unique_origins; | 1430 std::set<GURL> unique_origins; |
| 1429 EXPECT_EQ(ServiceWorkerDatabase::STATUS_OK, | 1431 EXPECT_EQ(ServiceWorkerDatabase::STATUS_OK, |
| 1430 database->GetOriginsWithRegistrations(&unique_origins)); | 1432 database->GetOriginsWithRegistrations(&unique_origins)); |
| 1431 EXPECT_EQ(1u, unique_origins.size()); | 1433 EXPECT_EQ(1u, unique_origins.size()); |
| 1432 EXPECT_TRUE(ContainsKey(unique_origins, origin2)); | 1434 EXPECT_TRUE(ContainsKey(unique_origins, origin2)); |
| 1433 | 1435 |
| 1434 // The registrations for |origin1| should be removed. | 1436 // The registrations for |origin1| should be removed. |
| 1435 std::vector<RegistrationData> registrations; | 1437 std::vector<RegistrationData> registrations; |
| 1436 EXPECT_EQ(ServiceWorkerDatabase::STATUS_OK, | 1438 EXPECT_EQ( |
| 1437 database->GetRegistrationsForOrigin(origin1, ®istrations)); | 1439 ServiceWorkerDatabase::STATUS_OK, |
| 1440 database->GetRegistrationsForOrigin(origin1, ®istrations, nullptr)); |
| 1438 EXPECT_TRUE(registrations.empty()); | 1441 EXPECT_TRUE(registrations.empty()); |
| 1439 GURL origin_out; | 1442 GURL origin_out; |
| 1440 EXPECT_EQ( | 1443 EXPECT_EQ( |
| 1441 ServiceWorkerDatabase::STATUS_ERROR_NOT_FOUND, | 1444 ServiceWorkerDatabase::STATUS_ERROR_NOT_FOUND, |
| 1442 database->ReadRegistrationOrigin(data1.registration_id, &origin_out)); | 1445 database->ReadRegistrationOrigin(data1.registration_id, &origin_out)); |
| 1443 | 1446 |
| 1444 // The registration for |origin2| should not be removed. | 1447 // The registration for |origin2| should not be removed. |
| 1445 RegistrationData data_out; | 1448 RegistrationData data_out; |
| 1446 std::vector<Resource> resources_out; | 1449 std::vector<Resource> resources_out; |
| 1447 EXPECT_EQ(ServiceWorkerDatabase::STATUS_OK, database->ReadRegistration( | 1450 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())); | 1499 CreateDatabase(database_dir.path())); |
| 1497 | 1500 |
| 1498 EXPECT_EQ(ServiceWorkerDatabase::STATUS_OK, database->LazyOpen(true)); | 1501 EXPECT_EQ(ServiceWorkerDatabase::STATUS_OK, database->LazyOpen(true)); |
| 1499 ASSERT_TRUE(base::DirectoryExists(database_dir.path())); | 1502 ASSERT_TRUE(base::DirectoryExists(database_dir.path())); |
| 1500 | 1503 |
| 1501 EXPECT_EQ(ServiceWorkerDatabase::STATUS_OK, database->DestroyDatabase()); | 1504 EXPECT_EQ(ServiceWorkerDatabase::STATUS_OK, database->DestroyDatabase()); |
| 1502 ASSERT_FALSE(base::DirectoryExists(database_dir.path())); | 1505 ASSERT_FALSE(base::DirectoryExists(database_dir.path())); |
| 1503 } | 1506 } |
| 1504 | 1507 |
| 1505 } // namespace content | 1508 } // namespace content |
| OLD | NEW |