| 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 559 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 570 base::FilePath pref_path = source_install_dir | 570 base::FilePath pref_path = source_install_dir |
| 571 .DirName() | 571 .DirName() |
| 572 .AppendASCII("Preferences"); | 572 .AppendASCII("Preferences"); |
| 573 InitializeInstalledExtensionService(pref_path, source_install_dir); | 573 InitializeInstalledExtensionService(pref_path, source_install_dir); |
| 574 } | 574 } |
| 575 | 575 |
| 576 void ExtensionServiceTestBase::InitializeEmptyExtensionService() { | 576 void ExtensionServiceTestBase::InitializeEmptyExtensionService() { |
| 577 InitializeExtensionService(CreateDefaultInitParams()); | 577 InitializeExtensionService(CreateDefaultInitParams()); |
| 578 } | 578 } |
| 579 | 579 |
| 580 void ExtensionServiceTestBase::InitializeExtensionProcessManager() { | 580 void ExtensionServiceTestBase::InitializeProcessManager() { |
| 581 static_cast<extensions::TestExtensionSystem*>( | 581 static_cast<extensions::TestExtensionSystem*>( |
| 582 ExtensionSystem::Get(profile_.get()))-> | 582 ExtensionSystem::Get(profile_.get()))-> |
| 583 CreateExtensionProcessManager(); | 583 CreateProcessManager(); |
| 584 } | 584 } |
| 585 | 585 |
| 586 void ExtensionServiceTestBase::InitializeExtensionServiceWithUpdater() { | 586 void ExtensionServiceTestBase::InitializeExtensionServiceWithUpdater() { |
| 587 ExtensionServiceInitParams params = CreateDefaultInitParams(); | 587 ExtensionServiceInitParams params = CreateDefaultInitParams(); |
| 588 params.autoupdate_enabled = true; | 588 params.autoupdate_enabled = true; |
| 589 InitializeExtensionService(params); | 589 InitializeExtensionService(params); |
| 590 service_->updater()->Start(); | 590 service_->updater()->Start(); |
| 591 } | 591 } |
| 592 | 592 |
| 593 void ExtensionServiceTestBase::InitializeExtensionSyncService() { | 593 void ExtensionServiceTestBase::InitializeExtensionSyncService() { |
| (...skipping 2443 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 3037 } | 3037 } |
| 3038 | 3038 |
| 3039 #if !defined(OS_CHROMEOS) | 3039 #if !defined(OS_CHROMEOS) |
| 3040 // LOAD extensions with plugins require approval. | 3040 // LOAD extensions with plugins require approval. |
| 3041 TEST_F(ExtensionServiceTest, LoadExtensionsWithPlugins) { | 3041 TEST_F(ExtensionServiceTest, LoadExtensionsWithPlugins) { |
| 3042 base::FilePath extension_with_plugin_path = good1_path(); | 3042 base::FilePath extension_with_plugin_path = good1_path(); |
| 3043 base::FilePath extension_no_plugin_path = good2_path(); | 3043 base::FilePath extension_no_plugin_path = good2_path(); |
| 3044 | 3044 |
| 3045 InitPluginService(); | 3045 InitPluginService(); |
| 3046 InitializeEmptyExtensionService(); | 3046 InitializeEmptyExtensionService(); |
| 3047 InitializeExtensionProcessManager(); | 3047 InitializeProcessManager(); |
| 3048 service_->set_show_extensions_prompts(true); | 3048 service_->set_show_extensions_prompts(true); |
| 3049 | 3049 |
| 3050 // Start by canceling any install prompts. | 3050 // Start by canceling any install prompts. |
| 3051 CommandLine::ForCurrentProcess()->AppendSwitchASCII( | 3051 CommandLine::ForCurrentProcess()->AppendSwitchASCII( |
| 3052 switches::kAppsGalleryInstallAutoConfirmForTests, | 3052 switches::kAppsGalleryInstallAutoConfirmForTests, |
| 3053 "cancel"); | 3053 "cancel"); |
| 3054 | 3054 |
| 3055 // The extension that has a plugin should not install. | 3055 // The extension that has a plugin should not install. |
| 3056 extensions::UnpackedInstaller::Create(service_)->Load( | 3056 extensions::UnpackedInstaller::Create(service_)->Load( |
| 3057 extension_with_plugin_path); | 3057 extension_with_plugin_path); |
| (...skipping 934 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 3992 service_->ReloadExtensions(); | 3992 service_->ReloadExtensions(); |
| 3993 | 3993 |
| 3994 // Extension counts shouldn't change. | 3994 // Extension counts shouldn't change. |
| 3995 EXPECT_EQ(1u, service_->extensions()->size()); | 3995 EXPECT_EQ(1u, service_->extensions()->size()); |
| 3996 EXPECT_EQ(0u, service_->disabled_extensions()->size()); | 3996 EXPECT_EQ(0u, service_->disabled_extensions()->size()); |
| 3997 } | 3997 } |
| 3998 | 3998 |
| 3999 // Tests reloading an extension. | 3999 // Tests reloading an extension. |
| 4000 TEST_F(ExtensionServiceTest, ReloadExtension) { | 4000 TEST_F(ExtensionServiceTest, ReloadExtension) { |
| 4001 InitializeEmptyExtensionService(); | 4001 InitializeEmptyExtensionService(); |
| 4002 InitializeExtensionProcessManager(); | 4002 InitializeProcessManager(); |
| 4003 | 4003 |
| 4004 // Simple extension that should install without error. | 4004 // Simple extension that should install without error. |
| 4005 const char* extension_id = "behllobkkfkfnphdnhnkndlbkcpglgmj"; | 4005 const char* extension_id = "behllobkkfkfnphdnhnkndlbkcpglgmj"; |
| 4006 base::FilePath ext = data_dir_ | 4006 base::FilePath ext = data_dir_ |
| 4007 .AppendASCII("good") | 4007 .AppendASCII("good") |
| 4008 .AppendASCII("Extensions") | 4008 .AppendASCII("Extensions") |
| 4009 .AppendASCII(extension_id) | 4009 .AppendASCII(extension_id) |
| 4010 .AppendASCII("1.0.0.0"); | 4010 .AppendASCII("1.0.0.0"); |
| 4011 extensions::UnpackedInstaller::Create(service_)->Load(ext); | 4011 extensions::UnpackedInstaller::Create(service_)->Load(ext); |
| 4012 base::RunLoop().RunUntilIdle(); | 4012 base::RunLoop().RunUntilIdle(); |
| (...skipping 1433 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 5446 scoped_ptr<syncer::SyncChangeProcessor>(new TestSyncProcessorStub), | 5446 scoped_ptr<syncer::SyncChangeProcessor>(new TestSyncProcessorStub), |
| 5447 scoped_ptr<syncer::SyncErrorFactory>(new syncer::SyncErrorFactoryMock())); | 5447 scoped_ptr<syncer::SyncErrorFactory>(new syncer::SyncErrorFactoryMock())); |
| 5448 | 5448 |
| 5449 syncer::SyncDataList list = extension_sync_service_->GetAllSyncData( | 5449 syncer::SyncDataList list = extension_sync_service_->GetAllSyncData( |
| 5450 syncer::EXTENSIONS); | 5450 syncer::EXTENSIONS); |
| 5451 ASSERT_EQ(list.size(), 0U); | 5451 ASSERT_EQ(list.size(), 0U); |
| 5452 } | 5452 } |
| 5453 | 5453 |
| 5454 TEST_F(ExtensionServiceTest, GetSyncExtensionDataUserSettings) { | 5454 TEST_F(ExtensionServiceTest, GetSyncExtensionDataUserSettings) { |
| 5455 InitializeEmptyExtensionService(); | 5455 InitializeEmptyExtensionService(); |
| 5456 InitializeExtensionProcessManager(); | 5456 InitializeProcessManager(); |
| 5457 InitializeExtensionSyncService(); | 5457 InitializeExtensionSyncService(); |
| 5458 InstallCRX(data_dir_.AppendASCII("good.crx"), INSTALL_NEW); | 5458 InstallCRX(data_dir_.AppendASCII("good.crx"), INSTALL_NEW); |
| 5459 const Extension* extension = service_->GetInstalledExtension(good_crx); | 5459 const Extension* extension = service_->GetInstalledExtension(good_crx); |
| 5460 ASSERT_TRUE(extension); | 5460 ASSERT_TRUE(extension); |
| 5461 | 5461 |
| 5462 TestSyncProcessorStub processor; | 5462 TestSyncProcessorStub processor; |
| 5463 extension_sync_service_->MergeDataAndStartSyncing( | 5463 extension_sync_service_->MergeDataAndStartSyncing( |
| 5464 syncer::EXTENSIONS, syncer::SyncDataList(), | 5464 syncer::EXTENSIONS, syncer::SyncDataList(), |
| 5465 scoped_ptr<syncer::SyncChangeProcessor>(new TestSyncProcessorStub), | 5465 scoped_ptr<syncer::SyncChangeProcessor>(new TestSyncProcessorStub), |
| 5466 scoped_ptr<syncer::SyncErrorFactory>(new syncer::SyncErrorFactoryMock())); | 5466 scoped_ptr<syncer::SyncErrorFactory>(new syncer::SyncErrorFactoryMock())); |
| (...skipping 279 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 5746 list[0] = sync_change; | 5746 list[0] = sync_change; |
| 5747 | 5747 |
| 5748 // Should again do nothing. | 5748 // Should again do nothing. |
| 5749 extension_sync_service_->ProcessSyncChanges(FROM_HERE, list); | 5749 extension_sync_service_->ProcessSyncChanges(FROM_HERE, list); |
| 5750 EXPECT_TRUE(service_->GetExtensionById(good_crx, false)); | 5750 EXPECT_TRUE(service_->GetExtensionById(good_crx, false)); |
| 5751 } | 5751 } |
| 5752 } | 5752 } |
| 5753 | 5753 |
| 5754 TEST_F(ExtensionServiceTest, ProcessSyncDataSettings) { | 5754 TEST_F(ExtensionServiceTest, ProcessSyncDataSettings) { |
| 5755 InitializeEmptyExtensionService(); | 5755 InitializeEmptyExtensionService(); |
| 5756 InitializeExtensionProcessManager(); | 5756 InitializeProcessManager(); |
| 5757 InitializeExtensionSyncService(); | 5757 InitializeExtensionSyncService(); |
| 5758 TestSyncProcessorStub processor; | 5758 TestSyncProcessorStub processor; |
| 5759 extension_sync_service_->MergeDataAndStartSyncing( | 5759 extension_sync_service_->MergeDataAndStartSyncing( |
| 5760 syncer::EXTENSIONS, syncer::SyncDataList(), | 5760 syncer::EXTENSIONS, syncer::SyncDataList(), |
| 5761 scoped_ptr<syncer::SyncChangeProcessor>(new TestSyncProcessorStub), | 5761 scoped_ptr<syncer::SyncChangeProcessor>(new TestSyncProcessorStub), |
| 5762 scoped_ptr<syncer::SyncErrorFactory>(new syncer::SyncErrorFactoryMock())); | 5762 scoped_ptr<syncer::SyncErrorFactory>(new syncer::SyncErrorFactoryMock())); |
| 5763 | 5763 |
| 5764 InstallCRX(data_dir_.AppendASCII("good.crx"), INSTALL_NEW); | 5764 InstallCRX(data_dir_.AppendASCII("good.crx"), INSTALL_NEW); |
| 5765 EXPECT_TRUE(service_->IsExtensionEnabled(good_crx)); | 5765 EXPECT_TRUE(service_->IsExtensionEnabled(good_crx)); |
| 5766 EXPECT_FALSE(extension_util::IsIncognitoEnabled(good_crx, service_)); | 5766 EXPECT_FALSE(extension_util::IsIncognitoEnabled(good_crx, service_)); |
| (...skipping 914 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 6681 service_->ReconcileKnownDisabled(); | 6681 service_->ReconcileKnownDisabled(); |
| 6682 expected_extensions.insert(good2); | 6682 expected_extensions.insert(good2); |
| 6683 expected_disabled_extensions.erase(good2); | 6683 expected_disabled_extensions.erase(good2); |
| 6684 | 6684 |
| 6685 EXPECT_EQ(expected_extensions, service_->extensions()->GetIDs()); | 6685 EXPECT_EQ(expected_extensions, service_->extensions()->GetIDs()); |
| 6686 EXPECT_EQ(expected_disabled_extensions, | 6686 EXPECT_EQ(expected_disabled_extensions, |
| 6687 service_->disabled_extensions()->GetIDs()); | 6687 service_->disabled_extensions()->GetIDs()); |
| 6688 } | 6688 } |
| 6689 | 6689 |
| 6690 #endif // #if !(defined(OS_LINUX) && defined(USE_AURA) && !defined(OS_CHROMEOS)) | 6690 #endif // #if !(defined(OS_LINUX) && defined(USE_AURA) && !defined(OS_CHROMEOS)) |
| OLD | NEW |