OLD | NEW |
1 // Copyright (c) 2013 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2013 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 <algorithm> | 5 #include <algorithm> |
6 #include <set> | 6 #include <set> |
7 #include <vector> | 7 #include <vector> |
8 | 8 |
9 #include "base/at_exit.h" | 9 #include "base/at_exit.h" |
10 #include "base/basictypes.h" | 10 #include "base/basictypes.h" |
(...skipping 4281 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
4292 TEST_F(ExtensionServiceTest, ClearExtensionData) { | 4292 TEST_F(ExtensionServiceTest, ClearExtensionData) { |
4293 InitializeEmptyExtensionService(); | 4293 InitializeEmptyExtensionService(); |
4294 ExtensionCookieCallback callback; | 4294 ExtensionCookieCallback callback; |
4295 | 4295 |
4296 // Load a test extension. | 4296 // Load a test extension. |
4297 base::FilePath path = data_dir(); | 4297 base::FilePath path = data_dir(); |
4298 path = path.AppendASCII("good.crx"); | 4298 path = path.AppendASCII("good.crx"); |
4299 const Extension* extension = InstallCRX(path, INSTALL_NEW); | 4299 const Extension* extension = InstallCRX(path, INSTALL_NEW); |
4300 ASSERT_TRUE(extension); | 4300 ASSERT_TRUE(extension); |
4301 GURL ext_url(extension->url()); | 4301 GURL ext_url(extension->url()); |
4302 std::string origin_id = webkit_database::GetIdentifierFromOrigin(ext_url); | 4302 std::string origin_id = storage::GetIdentifierFromOrigin(ext_url); |
4303 | 4303 |
4304 // Set a cookie for the extension. | 4304 // Set a cookie for the extension. |
4305 net::CookieMonster* cookie_monster = profile() | 4305 net::CookieMonster* cookie_monster = profile() |
4306 ->GetRequestContextForExtensions() | 4306 ->GetRequestContextForExtensions() |
4307 ->GetURLRequestContext() | 4307 ->GetURLRequestContext() |
4308 ->cookie_store() | 4308 ->cookie_store() |
4309 ->GetCookieMonster(); | 4309 ->GetCookieMonster(); |
4310 ASSERT_TRUE(cookie_monster); | 4310 ASSERT_TRUE(cookie_monster); |
4311 net::CookieOptions options; | 4311 net::CookieOptions options; |
4312 cookie_monster->SetCookieWithOptionsAsync( | 4312 cookie_monster->SetCookieWithOptionsAsync( |
4313 ext_url, "dummy=value", options, | 4313 ext_url, "dummy=value", options, |
4314 base::Bind(&ExtensionCookieCallback::SetCookieCallback, | 4314 base::Bind(&ExtensionCookieCallback::SetCookieCallback, |
4315 base::Unretained(&callback))); | 4315 base::Unretained(&callback))); |
4316 base::RunLoop().RunUntilIdle(); | 4316 base::RunLoop().RunUntilIdle(); |
4317 EXPECT_TRUE(callback.result_); | 4317 EXPECT_TRUE(callback.result_); |
4318 | 4318 |
4319 cookie_monster->GetAllCookiesForURLAsync( | 4319 cookie_monster->GetAllCookiesForURLAsync( |
4320 ext_url, | 4320 ext_url, |
4321 base::Bind(&ExtensionCookieCallback::GetAllCookiesCallback, | 4321 base::Bind(&ExtensionCookieCallback::GetAllCookiesCallback, |
4322 base::Unretained(&callback))); | 4322 base::Unretained(&callback))); |
4323 base::RunLoop().RunUntilIdle(); | 4323 base::RunLoop().RunUntilIdle(); |
4324 EXPECT_EQ(1U, callback.list_.size()); | 4324 EXPECT_EQ(1U, callback.list_.size()); |
4325 | 4325 |
4326 // Open a database. | 4326 // Open a database. |
4327 webkit_database::DatabaseTracker* db_tracker = | 4327 storage::DatabaseTracker* db_tracker = |
4328 BrowserContext::GetDefaultStoragePartition(profile()) | 4328 BrowserContext::GetDefaultStoragePartition(profile()) |
4329 ->GetDatabaseTracker(); | 4329 ->GetDatabaseTracker(); |
4330 base::string16 db_name = base::UTF8ToUTF16("db"); | 4330 base::string16 db_name = base::UTF8ToUTF16("db"); |
4331 base::string16 description = base::UTF8ToUTF16("db_description"); | 4331 base::string16 description = base::UTF8ToUTF16("db_description"); |
4332 int64 size; | 4332 int64 size; |
4333 db_tracker->DatabaseOpened(origin_id, db_name, description, 1, &size); | 4333 db_tracker->DatabaseOpened(origin_id, db_name, description, 1, &size); |
4334 db_tracker->DatabaseClosed(origin_id, db_name); | 4334 db_tracker->DatabaseClosed(origin_id, db_name); |
4335 std::vector<webkit_database::OriginInfo> origins; | 4335 std::vector<storage::OriginInfo> origins; |
4336 db_tracker->GetAllOriginsInfo(&origins); | 4336 db_tracker->GetAllOriginsInfo(&origins); |
4337 EXPECT_EQ(1U, origins.size()); | 4337 EXPECT_EQ(1U, origins.size()); |
4338 EXPECT_EQ(origin_id, origins[0].GetOriginIdentifier()); | 4338 EXPECT_EQ(origin_id, origins[0].GetOriginIdentifier()); |
4339 | 4339 |
4340 // Create local storage. We only simulate this by creating the backing files. | 4340 // Create local storage. We only simulate this by creating the backing files. |
4341 // Note: This test depends on details of how the dom_storage library | 4341 // Note: This test depends on details of how the dom_storage library |
4342 // stores data in the host file system. | 4342 // stores data in the host file system. |
4343 base::FilePath lso_dir_path = | 4343 base::FilePath lso_dir_path = |
4344 profile()->GetPath().AppendASCII("Local Storage"); | 4344 profile()->GetPath().AppendASCII("Local Storage"); |
4345 base::FilePath lso_file_path = lso_dir_path.AppendASCII(origin_id) | 4345 base::FilePath lso_file_path = lso_dir_path.AppendASCII(origin_id) |
(...skipping 54 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
4400 PackAndInstallCRX(data_dir().AppendASCII("app1"), INSTALL_NEW); | 4400 PackAndInstallCRX(data_dir().AppendASCII("app1"), INSTALL_NEW); |
4401 ValidatePrefKeyCount(++pref_count); | 4401 ValidatePrefKeyCount(++pref_count); |
4402 ASSERT_EQ(1u, registry()->enabled_extensions().size()); | 4402 ASSERT_EQ(1u, registry()->enabled_extensions().size()); |
4403 const std::string id1 = extension->id(); | 4403 const std::string id1 = extension->id(); |
4404 EXPECT_TRUE(extension->permissions_data()->HasAPIPermission( | 4404 EXPECT_TRUE(extension->permissions_data()->HasAPIPermission( |
4405 APIPermission::kUnlimitedStorage)); | 4405 APIPermission::kUnlimitedStorage)); |
4406 const GURL origin1( | 4406 const GURL origin1( |
4407 extensions::AppLaunchInfo::GetFullLaunchURL(extension).GetOrigin()); | 4407 extensions::AppLaunchInfo::GetFullLaunchURL(extension).GetOrigin()); |
4408 EXPECT_TRUE(profile()->GetExtensionSpecialStoragePolicy()->IsStorageUnlimited( | 4408 EXPECT_TRUE(profile()->GetExtensionSpecialStoragePolicy()->IsStorageUnlimited( |
4409 origin1)); | 4409 origin1)); |
4410 std::string origin_id = webkit_database::GetIdentifierFromOrigin(origin1); | 4410 std::string origin_id = storage::GetIdentifierFromOrigin(origin1); |
4411 | 4411 |
4412 // Install app2 from the same origin with unlimited storage. | 4412 // Install app2 from the same origin with unlimited storage. |
4413 extension = PackAndInstallCRX(data_dir().AppendASCII("app2"), INSTALL_NEW); | 4413 extension = PackAndInstallCRX(data_dir().AppendASCII("app2"), INSTALL_NEW); |
4414 ValidatePrefKeyCount(++pref_count); | 4414 ValidatePrefKeyCount(++pref_count); |
4415 ASSERT_EQ(2u, registry()->enabled_extensions().size()); | 4415 ASSERT_EQ(2u, registry()->enabled_extensions().size()); |
4416 const std::string id2 = extension->id(); | 4416 const std::string id2 = extension->id(); |
4417 EXPECT_TRUE(extension->permissions_data()->HasAPIPermission( | 4417 EXPECT_TRUE(extension->permissions_data()->HasAPIPermission( |
4418 APIPermission::kUnlimitedStorage)); | 4418 APIPermission::kUnlimitedStorage)); |
4419 EXPECT_TRUE(extension->web_extent().MatchesURL( | 4419 EXPECT_TRUE(extension->web_extent().MatchesURL( |
4420 extensions::AppLaunchInfo::GetFullLaunchURL(extension))); | 4420 extensions::AppLaunchInfo::GetFullLaunchURL(extension))); |
(...skipping 19 matching lines...) Expand all Loading... |
4440 EXPECT_TRUE(callback.result_); | 4440 EXPECT_TRUE(callback.result_); |
4441 | 4441 |
4442 cookie_monster->GetAllCookiesForURLAsync( | 4442 cookie_monster->GetAllCookiesForURLAsync( |
4443 origin1, | 4443 origin1, |
4444 base::Bind(&ExtensionCookieCallback::GetAllCookiesCallback, | 4444 base::Bind(&ExtensionCookieCallback::GetAllCookiesCallback, |
4445 base::Unretained(&callback))); | 4445 base::Unretained(&callback))); |
4446 base::RunLoop().RunUntilIdle(); | 4446 base::RunLoop().RunUntilIdle(); |
4447 EXPECT_EQ(1U, callback.list_.size()); | 4447 EXPECT_EQ(1U, callback.list_.size()); |
4448 | 4448 |
4449 // Open a database. | 4449 // Open a database. |
4450 webkit_database::DatabaseTracker* db_tracker = | 4450 storage::DatabaseTracker* db_tracker = |
4451 BrowserContext::GetDefaultStoragePartition(profile()) | 4451 BrowserContext::GetDefaultStoragePartition(profile()) |
4452 ->GetDatabaseTracker(); | 4452 ->GetDatabaseTracker(); |
4453 base::string16 db_name = base::UTF8ToUTF16("db"); | 4453 base::string16 db_name = base::UTF8ToUTF16("db"); |
4454 base::string16 description = base::UTF8ToUTF16("db_description"); | 4454 base::string16 description = base::UTF8ToUTF16("db_description"); |
4455 int64 size; | 4455 int64 size; |
4456 db_tracker->DatabaseOpened(origin_id, db_name, description, 1, &size); | 4456 db_tracker->DatabaseOpened(origin_id, db_name, description, 1, &size); |
4457 db_tracker->DatabaseClosed(origin_id, db_name); | 4457 db_tracker->DatabaseClosed(origin_id, db_name); |
4458 std::vector<webkit_database::OriginInfo> origins; | 4458 std::vector<storage::OriginInfo> origins; |
4459 db_tracker->GetAllOriginsInfo(&origins); | 4459 db_tracker->GetAllOriginsInfo(&origins); |
4460 EXPECT_EQ(1U, origins.size()); | 4460 EXPECT_EQ(1U, origins.size()); |
4461 EXPECT_EQ(origin_id, origins[0].GetOriginIdentifier()); | 4461 EXPECT_EQ(origin_id, origins[0].GetOriginIdentifier()); |
4462 | 4462 |
4463 // Create local storage. We only simulate this by creating the backing files. | 4463 // Create local storage. We only simulate this by creating the backing files. |
4464 // Note: This test depends on details of how the dom_storage library | 4464 // Note: This test depends on details of how the dom_storage library |
4465 // stores data in the host file system. | 4465 // stores data in the host file system. |
4466 base::FilePath lso_dir_path = | 4466 base::FilePath lso_dir_path = |
4467 profile()->GetPath().AppendASCII("Local Storage"); | 4467 profile()->GetPath().AppendASCII("Local Storage"); |
4468 base::FilePath lso_file_path = lso_dir_path.AppendASCII(origin_id) | 4468 base::FilePath lso_file_path = lso_dir_path.AppendASCII(origin_id) |
(...skipping 2684 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
7153 | 7153 |
7154 service()->Observe(chrome::NOTIFICATION_PROFILE_DESTRUCTION_STARTED, | 7154 service()->Observe(chrome::NOTIFICATION_PROFILE_DESTRUCTION_STARTED, |
7155 content::Source<Profile>(profile()), | 7155 content::Source<Profile>(profile()), |
7156 content::NotificationService::NoDetails()); | 7156 content::NotificationService::NoDetails()); |
7157 EXPECT_EQ(UnloadedExtensionInfo::REASON_PROFILE_SHUTDOWN, unloaded_reason_); | 7157 EXPECT_EQ(UnloadedExtensionInfo::REASON_PROFILE_SHUTDOWN, unloaded_reason_); |
7158 EXPECT_EQ(0u, registry()->enabled_extensions().size()); | 7158 EXPECT_EQ(0u, registry()->enabled_extensions().size()); |
7159 EXPECT_EQ(0u, registry()->disabled_extensions().size()); | 7159 EXPECT_EQ(0u, registry()->disabled_extensions().size()); |
7160 EXPECT_EQ(0u, registry()->terminated_extensions().size()); | 7160 EXPECT_EQ(0u, registry()->terminated_extensions().size()); |
7161 EXPECT_EQ(0u, registry()->blacklisted_extensions().size()); | 7161 EXPECT_EQ(0u, registry()->blacklisted_extensions().size()); |
7162 } | 7162 } |
OLD | NEW |