| 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 1433 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 5433 scoped_ptr<syncer::SyncChangeProcessor>(new TestSyncProcessorStub), | 5433 scoped_ptr<syncer::SyncChangeProcessor>(new TestSyncProcessorStub), |
| 5434 scoped_ptr<syncer::SyncErrorFactory>(new syncer::SyncErrorFactoryMock())); | 5434 scoped_ptr<syncer::SyncErrorFactory>(new syncer::SyncErrorFactoryMock())); |
| 5435 | 5435 |
| 5436 syncer::SyncDataList list = extension_sync_service_->GetAllSyncData( | 5436 syncer::SyncDataList list = extension_sync_service_->GetAllSyncData( |
| 5437 syncer::EXTENSIONS); | 5437 syncer::EXTENSIONS); |
| 5438 ASSERT_EQ(list.size(), 0U); | 5438 ASSERT_EQ(list.size(), 0U); |
| 5439 } | 5439 } |
| 5440 | 5440 |
| 5441 TEST_F(ExtensionServiceTest, GetSyncExtensionDataUserSettings) { | 5441 TEST_F(ExtensionServiceTest, GetSyncExtensionDataUserSettings) { |
| 5442 InitializeEmptyExtensionService(); | 5442 InitializeEmptyExtensionService(); |
| 5443 InitializeExtensionProcessManager(); | 5443 InitializeProcessManager(); |
| 5444 InitializeExtensionSyncService(); | 5444 InitializeExtensionSyncService(); |
| 5445 InstallCRX(data_dir_.AppendASCII("good.crx"), INSTALL_NEW); | 5445 InstallCRX(data_dir_.AppendASCII("good.crx"), INSTALL_NEW); |
| 5446 const Extension* extension = service_->GetInstalledExtension(good_crx); | 5446 const Extension* extension = service_->GetInstalledExtension(good_crx); |
| 5447 ASSERT_TRUE(extension); | 5447 ASSERT_TRUE(extension); |
| 5448 | 5448 |
| 5449 TestSyncProcessorStub processor; | 5449 TestSyncProcessorStub processor; |
| 5450 extension_sync_service_->MergeDataAndStartSyncing( | 5450 extension_sync_service_->MergeDataAndStartSyncing( |
| 5451 syncer::EXTENSIONS, syncer::SyncDataList(), | 5451 syncer::EXTENSIONS, syncer::SyncDataList(), |
| 5452 scoped_ptr<syncer::SyncChangeProcessor>(new TestSyncProcessorStub), | 5452 scoped_ptr<syncer::SyncChangeProcessor>(new TestSyncProcessorStub), |
| 5453 scoped_ptr<syncer::SyncErrorFactory>(new syncer::SyncErrorFactoryMock())); | 5453 scoped_ptr<syncer::SyncErrorFactory>(new syncer::SyncErrorFactoryMock())); |
| (...skipping 279 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 5733 list[0] = sync_change; | 5733 list[0] = sync_change; |
| 5734 | 5734 |
| 5735 // Should again do nothing. | 5735 // Should again do nothing. |
| 5736 extension_sync_service_->ProcessSyncChanges(FROM_HERE, list); | 5736 extension_sync_service_->ProcessSyncChanges(FROM_HERE, list); |
| 5737 EXPECT_TRUE(service_->GetExtensionById(good_crx, false)); | 5737 EXPECT_TRUE(service_->GetExtensionById(good_crx, false)); |
| 5738 } | 5738 } |
| 5739 } | 5739 } |
| 5740 | 5740 |
| 5741 TEST_F(ExtensionServiceTest, ProcessSyncDataSettings) { | 5741 TEST_F(ExtensionServiceTest, ProcessSyncDataSettings) { |
| 5742 InitializeEmptyExtensionService(); | 5742 InitializeEmptyExtensionService(); |
| 5743 InitializeExtensionProcessManager(); | 5743 InitializeProcessManager(); |
| 5744 InitializeExtensionSyncService(); | 5744 InitializeExtensionSyncService(); |
| 5745 TestSyncProcessorStub processor; | 5745 TestSyncProcessorStub processor; |
| 5746 extension_sync_service_->MergeDataAndStartSyncing( | 5746 extension_sync_service_->MergeDataAndStartSyncing( |
| 5747 syncer::EXTENSIONS, syncer::SyncDataList(), | 5747 syncer::EXTENSIONS, syncer::SyncDataList(), |
| 5748 scoped_ptr<syncer::SyncChangeProcessor>(new TestSyncProcessorStub), | 5748 scoped_ptr<syncer::SyncChangeProcessor>(new TestSyncProcessorStub), |
| 5749 scoped_ptr<syncer::SyncErrorFactory>(new syncer::SyncErrorFactoryMock())); | 5749 scoped_ptr<syncer::SyncErrorFactory>(new syncer::SyncErrorFactoryMock())); |
| 5750 | 5750 |
| 5751 InstallCRX(data_dir_.AppendASCII("good.crx"), INSTALL_NEW); | 5751 InstallCRX(data_dir_.AppendASCII("good.crx"), INSTALL_NEW); |
| 5752 EXPECT_TRUE(service_->IsExtensionEnabled(good_crx)); | 5752 EXPECT_TRUE(service_->IsExtensionEnabled(good_crx)); |
| 5753 EXPECT_FALSE(extension_util::IsIncognitoEnabled(good_crx, service_)); | 5753 EXPECT_FALSE(extension_util::IsIncognitoEnabled(good_crx, service_)); |
| (...skipping 912 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 6666 // ReconcileKnownDisabled(). | 6666 // ReconcileKnownDisabled(). |
| 6667 service_->EnableExtension(good2); | 6667 service_->EnableExtension(good2); |
| 6668 service_->ReconcileKnownDisabled(); | 6668 service_->ReconcileKnownDisabled(); |
| 6669 expected_extensions.insert(good2); | 6669 expected_extensions.insert(good2); |
| 6670 expected_disabled_extensions.erase(good2); | 6670 expected_disabled_extensions.erase(good2); |
| 6671 | 6671 |
| 6672 EXPECT_EQ(expected_extensions, service_->extensions()->GetIDs()); | 6672 EXPECT_EQ(expected_extensions, service_->extensions()->GetIDs()); |
| 6673 EXPECT_EQ(expected_disabled_extensions, | 6673 EXPECT_EQ(expected_disabled_extensions, |
| 6674 service_->disabled_extensions()->GetIDs()); | 6674 service_->disabled_extensions()->GetIDs()); |
| 6675 } | 6675 } |
| OLD | NEW |