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

Side by Side Diff: content/browser/service_worker/service_worker_database_unittest.cc

Issue 1146913004: Service Worker: Add ServiceWorkerContainer.getRegistrations() method. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Refactor GetRegistrationsForOrigin to get real registrations. Created 5 years, 6 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 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
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, &registrations)); 396 database->GetRegistrationsForOrigin(origin1, &registrations,
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
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, &registrations)); 447 database->GetRegistrationsForOrigin(origin3, &registrations,
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
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, &registrations)); 1441 database->GetRegistrationsForOrigin(origin1, &registrations,
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
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
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698