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 |