| 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 "chrome/browser/extensions/extension_service_unittest.h" | 5 #include "chrome/browser/extensions/extension_service_unittest.h" |
| 6 | 6 |
| 7 #include <algorithm> | 7 #include <algorithm> |
| 8 #include <set> | 8 #include <set> |
| 9 #include <vector> | 9 #include <vector> |
| 10 | 10 |
| (...skipping 555 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 566 base::FilePath pref_path = source_install_dir | 566 base::FilePath pref_path = source_install_dir |
| 567 .DirName() | 567 .DirName() |
| 568 .AppendASCII("Preferences"); | 568 .AppendASCII("Preferences"); |
| 569 InitializeInstalledExtensionService(pref_path, source_install_dir); | 569 InitializeInstalledExtensionService(pref_path, source_install_dir); |
| 570 } | 570 } |
| 571 | 571 |
| 572 void ExtensionServiceTestBase::InitializeEmptyExtensionService() { | 572 void ExtensionServiceTestBase::InitializeEmptyExtensionService() { |
| 573 InitializeExtensionService(CreateDefaultInitParams()); | 573 InitializeExtensionService(CreateDefaultInitParams()); |
| 574 } | 574 } |
| 575 | 575 |
| 576 void ExtensionServiceTestBase::InitializeExtensionProcessManager() { | 576 void ExtensionServiceTestBase::InitializeProcessManager() { |
| 577 static_cast<extensions::TestExtensionSystem*>( | 577 static_cast<extensions::TestExtensionSystem*>( |
| 578 ExtensionSystem::Get(profile_.get()))-> | 578 ExtensionSystem::Get(profile_.get()))-> |
| 579 CreateExtensionProcessManager(); | 579 CreateProcessManager(); |
| 580 } | 580 } |
| 581 | 581 |
| 582 void ExtensionServiceTestBase::InitializeExtensionServiceWithUpdater() { | 582 void ExtensionServiceTestBase::InitializeExtensionServiceWithUpdater() { |
| 583 ExtensionServiceInitParams params = CreateDefaultInitParams(); | 583 ExtensionServiceInitParams params = CreateDefaultInitParams(); |
| 584 params.autoupdate_enabled = true; | 584 params.autoupdate_enabled = true; |
| 585 InitializeExtensionService(params); | 585 InitializeExtensionService(params); |
| 586 service_->updater()->Start(); | 586 service_->updater()->Start(); |
| 587 } | 587 } |
| 588 | 588 |
| 589 void ExtensionServiceTestBase::InitializeExtensionSyncService() { | 589 void ExtensionServiceTestBase::InitializeExtensionSyncService() { |
| (...skipping 2434 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 3024 } | 3024 } |
| 3025 | 3025 |
| 3026 #if !defined(OS_CHROMEOS) | 3026 #if !defined(OS_CHROMEOS) |
| 3027 // LOAD extensions with plugins require approval. | 3027 // LOAD extensions with plugins require approval. |
| 3028 TEST_F(ExtensionServiceTest, LoadExtensionsWithPlugins) { | 3028 TEST_F(ExtensionServiceTest, LoadExtensionsWithPlugins) { |
| 3029 base::FilePath extension_with_plugin_path = good1_path(); | 3029 base::FilePath extension_with_plugin_path = good1_path(); |
| 3030 base::FilePath extension_no_plugin_path = good2_path(); | 3030 base::FilePath extension_no_plugin_path = good2_path(); |
| 3031 | 3031 |
| 3032 InitPluginService(); | 3032 InitPluginService(); |
| 3033 InitializeEmptyExtensionService(); | 3033 InitializeEmptyExtensionService(); |
| 3034 InitializeExtensionProcessManager(); | 3034 InitializeProcessManager(); |
| 3035 service_->set_show_extensions_prompts(true); | 3035 service_->set_show_extensions_prompts(true); |
| 3036 | 3036 |
| 3037 // Start by canceling any install prompts. | 3037 // Start by canceling any install prompts. |
| 3038 CommandLine::ForCurrentProcess()->AppendSwitchASCII( | 3038 CommandLine::ForCurrentProcess()->AppendSwitchASCII( |
| 3039 switches::kAppsGalleryInstallAutoConfirmForTests, | 3039 switches::kAppsGalleryInstallAutoConfirmForTests, |
| 3040 "cancel"); | 3040 "cancel"); |
| 3041 | 3041 |
| 3042 // The extension that has a plugin should not install. | 3042 // The extension that has a plugin should not install. |
| 3043 extensions::UnpackedInstaller::Create(service_)->Load( | 3043 extensions::UnpackedInstaller::Create(service_)->Load( |
| 3044 extension_with_plugin_path); | 3044 extension_with_plugin_path); |
| (...skipping 934 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 3979 service_->ReloadExtensions(); | 3979 service_->ReloadExtensions(); |
| 3980 | 3980 |
| 3981 // Extension counts shouldn't change. | 3981 // Extension counts shouldn't change. |
| 3982 EXPECT_EQ(1u, service_->extensions()->size()); | 3982 EXPECT_EQ(1u, service_->extensions()->size()); |
| 3983 EXPECT_EQ(0u, service_->disabled_extensions()->size()); | 3983 EXPECT_EQ(0u, service_->disabled_extensions()->size()); |
| 3984 } | 3984 } |
| 3985 | 3985 |
| 3986 // Tests reloading an extension. | 3986 // Tests reloading an extension. |
| 3987 TEST_F(ExtensionServiceTest, ReloadExtension) { | 3987 TEST_F(ExtensionServiceTest, ReloadExtension) { |
| 3988 InitializeEmptyExtensionService(); | 3988 InitializeEmptyExtensionService(); |
| 3989 InitializeExtensionProcessManager(); | 3989 InitializeProcessManager(); |
| 3990 | 3990 |
| 3991 // Simple extension that should install without error. | 3991 // Simple extension that should install without error. |
| 3992 const char* extension_id = "behllobkkfkfnphdnhnkndlbkcpglgmj"; | 3992 const char* extension_id = "behllobkkfkfnphdnhnkndlbkcpglgmj"; |
| 3993 base::FilePath ext = data_dir_ | 3993 base::FilePath ext = data_dir_ |
| 3994 .AppendASCII("good") | 3994 .AppendASCII("good") |
| 3995 .AppendASCII("Extensions") | 3995 .AppendASCII("Extensions") |
| 3996 .AppendASCII(extension_id) | 3996 .AppendASCII(extension_id) |
| 3997 .AppendASCII("1.0.0.0"); | 3997 .AppendASCII("1.0.0.0"); |
| 3998 extensions::UnpackedInstaller::Create(service_)->Load(ext); | 3998 extensions::UnpackedInstaller::Create(service_)->Load(ext); |
| 3999 base::RunLoop().RunUntilIdle(); | 3999 base::RunLoop().RunUntilIdle(); |
| (...skipping 1346 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 5346 scoped_ptr<syncer::SyncChangeProcessor>(new TestSyncProcessorStub), | 5346 scoped_ptr<syncer::SyncChangeProcessor>(new TestSyncProcessorStub), |
| 5347 scoped_ptr<syncer::SyncErrorFactory>(new syncer::SyncErrorFactoryMock())); | 5347 scoped_ptr<syncer::SyncErrorFactory>(new syncer::SyncErrorFactoryMock())); |
| 5348 | 5348 |
| 5349 syncer::SyncDataList list = extension_sync_service_->GetAllSyncData( | 5349 syncer::SyncDataList list = extension_sync_service_->GetAllSyncData( |
| 5350 syncer::EXTENSIONS); | 5350 syncer::EXTENSIONS); |
| 5351 ASSERT_EQ(list.size(), 0U); | 5351 ASSERT_EQ(list.size(), 0U); |
| 5352 } | 5352 } |
| 5353 | 5353 |
| 5354 TEST_F(ExtensionServiceTest, GetSyncExtensionDataUserSettings) { | 5354 TEST_F(ExtensionServiceTest, GetSyncExtensionDataUserSettings) { |
| 5355 InitializeEmptyExtensionService(); | 5355 InitializeEmptyExtensionService(); |
| 5356 InitializeExtensionProcessManager(); | 5356 InitializeProcessManager(); |
| 5357 InitializeExtensionSyncService(); | 5357 InitializeExtensionSyncService(); |
| 5358 InstallCRX(data_dir_.AppendASCII("good.crx"), INSTALL_NEW); | 5358 InstallCRX(data_dir_.AppendASCII("good.crx"), INSTALL_NEW); |
| 5359 const Extension* extension = service_->GetInstalledExtension(good_crx); | 5359 const Extension* extension = service_->GetInstalledExtension(good_crx); |
| 5360 ASSERT_TRUE(extension); | 5360 ASSERT_TRUE(extension); |
| 5361 | 5361 |
| 5362 TestSyncProcessorStub processor; | 5362 TestSyncProcessorStub processor; |
| 5363 extension_sync_service_->MergeDataAndStartSyncing( | 5363 extension_sync_service_->MergeDataAndStartSyncing( |
| 5364 syncer::EXTENSIONS, syncer::SyncDataList(), | 5364 syncer::EXTENSIONS, syncer::SyncDataList(), |
| 5365 scoped_ptr<syncer::SyncChangeProcessor>(new TestSyncProcessorStub), | 5365 scoped_ptr<syncer::SyncChangeProcessor>(new TestSyncProcessorStub), |
| 5366 scoped_ptr<syncer::SyncErrorFactory>(new syncer::SyncErrorFactoryMock())); | 5366 scoped_ptr<syncer::SyncErrorFactory>(new syncer::SyncErrorFactoryMock())); |
| (...skipping 254 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 5621 list[0] = sync_change; | 5621 list[0] = sync_change; |
| 5622 | 5622 |
| 5623 // Should again do nothing. | 5623 // Should again do nothing. |
| 5624 extension_sync_service_->ProcessSyncChanges(FROM_HERE, list); | 5624 extension_sync_service_->ProcessSyncChanges(FROM_HERE, list); |
| 5625 EXPECT_TRUE(service_->GetExtensionById(good_crx, false)); | 5625 EXPECT_TRUE(service_->GetExtensionById(good_crx, false)); |
| 5626 } | 5626 } |
| 5627 } | 5627 } |
| 5628 | 5628 |
| 5629 TEST_F(ExtensionServiceTest, ProcessSyncDataSettings) { | 5629 TEST_F(ExtensionServiceTest, ProcessSyncDataSettings) { |
| 5630 InitializeEmptyExtensionService(); | 5630 InitializeEmptyExtensionService(); |
| 5631 InitializeExtensionProcessManager(); | 5631 InitializeProcessManager(); |
| 5632 InitializeExtensionSyncService(); | 5632 InitializeExtensionSyncService(); |
| 5633 TestSyncProcessorStub processor; | 5633 TestSyncProcessorStub processor; |
| 5634 extension_sync_service_->MergeDataAndStartSyncing( | 5634 extension_sync_service_->MergeDataAndStartSyncing( |
| 5635 syncer::EXTENSIONS, syncer::SyncDataList(), | 5635 syncer::EXTENSIONS, syncer::SyncDataList(), |
| 5636 scoped_ptr<syncer::SyncChangeProcessor>(new TestSyncProcessorStub), | 5636 scoped_ptr<syncer::SyncChangeProcessor>(new TestSyncProcessorStub), |
| 5637 scoped_ptr<syncer::SyncErrorFactory>(new syncer::SyncErrorFactoryMock())); | 5637 scoped_ptr<syncer::SyncErrorFactory>(new syncer::SyncErrorFactoryMock())); |
| 5638 | 5638 |
| 5639 InstallCRX(data_dir_.AppendASCII("good.crx"), INSTALL_NEW); | 5639 InstallCRX(data_dir_.AppendASCII("good.crx"), INSTALL_NEW); |
| 5640 EXPECT_TRUE(service_->IsExtensionEnabled(good_crx)); | 5640 EXPECT_TRUE(service_->IsExtensionEnabled(good_crx)); |
| 5641 EXPECT_FALSE(extension_util::IsIncognitoEnabled(good_crx, service_)); | 5641 EXPECT_FALSE(extension_util::IsIncognitoEnabled(good_crx, service_)); |
| (...skipping 892 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 6534 // ReconcileKnownDisabled(). | 6534 // ReconcileKnownDisabled(). |
| 6535 service_->EnableExtension(good2); | 6535 service_->EnableExtension(good2); |
| 6536 service_->ReconcileKnownDisabled(); | 6536 service_->ReconcileKnownDisabled(); |
| 6537 expected_extensions.insert(good2); | 6537 expected_extensions.insert(good2); |
| 6538 expected_disabled_extensions.erase(good2); | 6538 expected_disabled_extensions.erase(good2); |
| 6539 | 6539 |
| 6540 EXPECT_EQ(expected_extensions, service_->extensions()->GetIDs()); | 6540 EXPECT_EQ(expected_extensions, service_->extensions()->GetIDs()); |
| 6541 EXPECT_EQ(expected_disabled_extensions, | 6541 EXPECT_EQ(expected_disabled_extensions, |
| 6542 service_->disabled_extensions()->GetIDs()); | 6542 service_->disabled_extensions()->GetIDs()); |
| 6543 } | 6543 } |
| OLD | NEW |