| 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 44 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 55 #include "chrome/browser/extensions/unpacked_installer.h" | 55 #include "chrome/browser/extensions/unpacked_installer.h" |
| 56 #include "chrome/browser/extensions/updater/extension_updater.h" | 56 #include "chrome/browser/extensions/updater/extension_updater.h" |
| 57 #include "chrome/browser/prefs/browser_prefs.h" | 57 #include "chrome/browser/prefs/browser_prefs.h" |
| 58 #include "chrome/browser/prefs/pref_service_mock_builder.h" | 58 #include "chrome/browser/prefs/pref_service_mock_builder.h" |
| 59 #include "chrome/browser/prefs/pref_service_syncable.h" | 59 #include "chrome/browser/prefs/pref_service_syncable.h" |
| 60 #include "chrome/browser/prefs/scoped_user_pref_update.h" | 60 #include "chrome/browser/prefs/scoped_user_pref_update.h" |
| 61 #include "chrome/common/chrome_constants.h" | 61 #include "chrome/common/chrome_constants.h" |
| 62 #include "chrome/common/chrome_notification_types.h" | 62 #include "chrome/common/chrome_notification_types.h" |
| 63 #include "chrome/common/chrome_paths.h" | 63 #include "chrome/common/chrome_paths.h" |
| 64 #include "chrome/common/chrome_switches.h" | 64 #include "chrome/common/chrome_switches.h" |
| 65 #include "chrome/common/extensions/api/i18n/default_locale_handler.h" | |
| 66 #include "chrome/common/extensions/api/plugins/plugins_handler.h" | 65 #include "chrome/common/extensions/api/plugins/plugins_handler.h" |
| 67 #include "chrome/common/extensions/background_info.h" | 66 #include "chrome/common/extensions/background_info.h" |
| 68 #include "chrome/common/extensions/extension.h" | 67 #include "chrome/common/extensions/extension.h" |
| 69 #include "chrome/common/extensions/extension_l10n_util.h" | 68 #include "chrome/common/extensions/extension_l10n_util.h" |
| 70 #include "chrome/common/extensions/extension_manifest_constants.h" | 69 #include "chrome/common/extensions/extension_manifest_constants.h" |
| 71 #include "chrome/common/extensions/manifest_handlers/content_scripts_handler.h" | 70 #include "chrome/common/extensions/manifest_handlers/content_scripts_handler.h" |
| 72 #include "chrome/common/extensions/manifest_handlers/requirements_handler.h" | |
| 73 #include "chrome/common/extensions/manifest_url_handler.h" | 71 #include "chrome/common/extensions/manifest_url_handler.h" |
| 74 #include "chrome/common/extensions/permissions/permission_set.h" | 72 #include "chrome/common/extensions/permissions/permission_set.h" |
| 75 #include "chrome/common/pref_names.h" | 73 #include "chrome/common/pref_names.h" |
| 76 #include "chrome/common/url_constants.h" | 74 #include "chrome/common/url_constants.h" |
| 77 #include "chrome/test/base/testing_profile.h" | 75 #include "chrome/test/base/testing_profile.h" |
| 78 #include "components/user_prefs/pref_registry_syncable.h" | 76 #include "components/user_prefs/pref_registry_syncable.h" |
| 79 #include "content/public/browser/dom_storage_context.h" | 77 #include "content/public/browser/dom_storage_context.h" |
| 80 #include "content/public/browser/gpu_data_manager.h" | 78 #include "content/public/browser/gpu_data_manager.h" |
| 81 #include "content/public/browser/indexed_db_context.h" | 79 #include "content/public/browser/indexed_db_context.h" |
| 82 #include "content/public/browser/notification_registrar.h" | 80 #include "content/public/browser/notification_registrar.h" |
| (...skipping 479 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 562 static_cast<TestingProfile*>(profile_.get()); | 560 static_cast<TestingProfile*>(profile_.get()); |
| 563 profile->CreateRequestContext(); | 561 profile->CreateRequestContext(); |
| 564 } | 562 } |
| 565 | 563 |
| 566 // static | 564 // static |
| 567 void ExtensionServiceTestBase::SetUpTestCase() { | 565 void ExtensionServiceTestBase::SetUpTestCase() { |
| 568 ExtensionErrorReporter::Init(false); // no noisy errors | 566 ExtensionErrorReporter::Init(false); // no noisy errors |
| 569 } | 567 } |
| 570 | 568 |
| 571 void ExtensionServiceTestBase::SetUp() { | 569 void ExtensionServiceTestBase::SetUp() { |
| 572 ExtensionTest::SetUp(); | |
| 573 ExtensionErrorReporter::GetInstance()->ClearErrors(); | 570 ExtensionErrorReporter::GetInstance()->ClearErrors(); |
| 574 (new extensions::BackgroundManifestHandler)->Register(); | |
| 575 (new extensions::ContentScriptsHandler)->Register(); | |
| 576 (new extensions::DefaultLocaleHandler)->Register(); | |
| 577 (new extensions::PluginsHandler)->Register(); | |
| 578 (new extensions::RequirementsHandler)->Register(); | |
| 579 } | 571 } |
| 580 | 572 |
| 581 class ExtensionServiceTest | 573 class ExtensionServiceTest |
| 582 : public ExtensionServiceTestBase, public content::NotificationObserver { | 574 : public ExtensionServiceTestBase, public content::NotificationObserver { |
| 583 public: | 575 public: |
| 584 ExtensionServiceTest() | 576 ExtensionServiceTest() |
| 585 : installed_(NULL), | 577 : installed_(NULL), |
| 586 override_external_install_prompt_( | 578 override_external_install_prompt_( |
| 587 FeatureSwitch::prompt_for_external_extensions(), false) { | 579 FeatureSwitch::prompt_for_external_extensions(), false) { |
| 588 registrar_.Add(this, chrome::NOTIFICATION_EXTENSION_LOADED, | 580 registrar_.Add(this, chrome::NOTIFICATION_EXTENSION_LOADED, |
| (...skipping 5366 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 5955 new MockExtensionProvider(service_, Manifest::EXTERNAL_PREF); | 5947 new MockExtensionProvider(service_, Manifest::EXTERNAL_PREF); |
| 5956 AddMockExternalProvider(provider); | 5948 AddMockExternalProvider(provider); |
| 5957 provider->UpdateOrAddExtension(updates_from_webstore, "1", crx_path); | 5949 provider->UpdateOrAddExtension(updates_from_webstore, "1", crx_path); |
| 5958 | 5950 |
| 5959 service_->CheckForExternalUpdates(); | 5951 service_->CheckForExternalUpdates(); |
| 5960 loop_.RunUntilIdle(); | 5952 loop_.RunUntilIdle(); |
| 5961 EXPECT_TRUE(extensions::HasExternalInstallError(service_)); | 5953 EXPECT_TRUE(extensions::HasExternalInstallError(service_)); |
| 5962 EXPECT_FALSE(extensions::HasExternalInstallBubble(service_)); | 5954 EXPECT_FALSE(extensions::HasExternalInstallBubble(service_)); |
| 5963 EXPECT_FALSE(service_->IsExtensionEnabled(updates_from_webstore)); | 5955 EXPECT_FALSE(service_->IsExtensionEnabled(updates_from_webstore)); |
| 5964 } | 5956 } |
| OLD | NEW |