| OLD | NEW |
| 1 // Copyright 2014 The Chromium Authors. All rights reserved. | 1 // Copyright 2014 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 #ifndef EXTENSIONS_BROWSER_TEST_EXTENSIONS_BROWSER_CLIENT_H_ | 5 #ifndef EXTENSIONS_BROWSER_TEST_EXTENSIONS_BROWSER_CLIENT_H_ |
| 6 #define EXTENSIONS_BROWSER_TEST_EXTENSIONS_BROWSER_CLIENT_H_ | 6 #define EXTENSIONS_BROWSER_TEST_EXTENSIONS_BROWSER_CLIENT_H_ |
| 7 | 7 |
| 8 #include "base/compiler_specific.h" | 8 #include "base/compiler_specific.h" |
| 9 #include "extensions/browser/extensions_browser_client.h" | 9 #include "extensions/browser/extensions_browser_client.h" |
| 10 #include "extensions/browser/updater/extension_cache.h" | 10 #include "extensions/browser/updater/extension_cache.h" |
| 11 | 11 |
| 12 namespace extensions { | 12 namespace extensions { |
| 13 | 13 |
| 14 // A simplified ExtensionsBrowserClient for a single normal browser context and | 14 // A simplified ExtensionsBrowserClient for a single normal browser context and |
| 15 // an optional incognito browser context associated with it. A test that uses | 15 // an optional incognito browser context associated with it. A test that uses |
| 16 // this class should call ExtensionsBrowserClient::Set() with its instance. | 16 // this class should call ExtensionsBrowserClient::Set() with its instance. |
| 17 class TestExtensionsBrowserClient : public ExtensionsBrowserClient { | 17 class TestExtensionsBrowserClient : public ExtensionsBrowserClient { |
| 18 public: | 18 public: |
| 19 // |main_context| is required and must not be an incognito context. | 19 // |main_context| is required and must not be an incognito context. |
| 20 explicit TestExtensionsBrowserClient(content::BrowserContext* main_context); | 20 explicit TestExtensionsBrowserClient(content::BrowserContext* main_context); |
| 21 virtual ~TestExtensionsBrowserClient(); | 21 ~TestExtensionsBrowserClient() override; |
| 22 | 22 |
| 23 void set_process_manager_delegate(ProcessManagerDelegate* delegate) { | 23 void set_process_manager_delegate(ProcessManagerDelegate* delegate) { |
| 24 process_manager_delegate_ = delegate; | 24 process_manager_delegate_ = delegate; |
| 25 } | 25 } |
| 26 void set_extension_system_factory(ExtensionSystemProvider* factory) { | 26 void set_extension_system_factory(ExtensionSystemProvider* factory) { |
| 27 extension_system_factory_ = factory; | 27 extension_system_factory_ = factory; |
| 28 } | 28 } |
| 29 void set_extension_cache(scoped_ptr<ExtensionCache> extension_cache) { | 29 void set_extension_cache(scoped_ptr<ExtensionCache> extension_cache) { |
| 30 extension_cache_ = extension_cache.Pass(); | 30 extension_cache_ = extension_cache.Pass(); |
| 31 } | 31 } |
| 32 | 32 |
| 33 // Associates an incognito context with |main_context_|. | 33 // Associates an incognito context with |main_context_|. |
| 34 void SetIncognitoContext(content::BrowserContext* incognito_context); | 34 void SetIncognitoContext(content::BrowserContext* incognito_context); |
| 35 | 35 |
| 36 // ExtensionsBrowserClient overrides: | 36 // ExtensionsBrowserClient overrides: |
| 37 virtual bool IsShuttingDown() override; | 37 bool IsShuttingDown() override; |
| 38 virtual bool AreExtensionsDisabled(const base::CommandLine& command_line, | 38 bool AreExtensionsDisabled(const base::CommandLine& command_line, |
| 39 content::BrowserContext* context) override; | 39 content::BrowserContext* context) override; |
| 40 virtual bool IsValidContext(content::BrowserContext* context) override; | 40 bool IsValidContext(content::BrowserContext* context) override; |
| 41 virtual bool IsSameContext(content::BrowserContext* first, | 41 bool IsSameContext(content::BrowserContext* first, |
| 42 content::BrowserContext* second) override; | 42 content::BrowserContext* second) override; |
| 43 virtual bool HasOffTheRecordContext(content::BrowserContext* context) | 43 bool HasOffTheRecordContext(content::BrowserContext* context) override; |
| 44 override; | 44 content::BrowserContext* GetOffTheRecordContext( |
| 45 virtual content::BrowserContext* GetOffTheRecordContext( | |
| 46 content::BrowserContext* context) override; | 45 content::BrowserContext* context) override; |
| 47 virtual content::BrowserContext* GetOriginalContext( | 46 content::BrowserContext* GetOriginalContext( |
| 48 content::BrowserContext* context) override; | 47 content::BrowserContext* context) override; |
| 49 virtual bool IsGuestSession(content::BrowserContext* context) const override; | 48 bool IsGuestSession(content::BrowserContext* context) const override; |
| 50 virtual bool IsExtensionIncognitoEnabled( | 49 bool IsExtensionIncognitoEnabled( |
| 51 const std::string& extension_id, | 50 const std::string& extension_id, |
| 52 content::BrowserContext* context) const override; | 51 content::BrowserContext* context) const override; |
| 53 virtual bool CanExtensionCrossIncognito( | 52 bool CanExtensionCrossIncognito( |
| 54 const extensions::Extension* extension, | 53 const extensions::Extension* extension, |
| 55 content::BrowserContext* context) const override; | 54 content::BrowserContext* context) const override; |
| 56 virtual net::URLRequestJob* MaybeCreateResourceBundleRequestJob( | 55 net::URLRequestJob* MaybeCreateResourceBundleRequestJob( |
| 57 net::URLRequest* request, | 56 net::URLRequest* request, |
| 58 net::NetworkDelegate* network_delegate, | 57 net::NetworkDelegate* network_delegate, |
| 59 const base::FilePath& directory_path, | 58 const base::FilePath& directory_path, |
| 60 const std::string& content_security_policy, | 59 const std::string& content_security_policy, |
| 61 bool send_cors_header) override; | 60 bool send_cors_header) override; |
| 62 virtual bool AllowCrossRendererResourceLoad(net::URLRequest* request, | 61 bool AllowCrossRendererResourceLoad(net::URLRequest* request, |
| 63 bool is_incognito, | 62 bool is_incognito, |
| 64 const Extension* extension, | 63 const Extension* extension, |
| 65 InfoMap* extension_info_map) | 64 InfoMap* extension_info_map) override; |
| 66 override; | 65 PrefService* GetPrefServiceForContext( |
| 67 virtual PrefService* GetPrefServiceForContext( | |
| 68 content::BrowserContext* context) override; | 66 content::BrowserContext* context) override; |
| 69 virtual void GetEarlyExtensionPrefsObservers( | 67 void GetEarlyExtensionPrefsObservers( |
| 70 content::BrowserContext* context, | 68 content::BrowserContext* context, |
| 71 std::vector<ExtensionPrefsObserver*>* observers) const override; | 69 std::vector<ExtensionPrefsObserver*>* observers) const override; |
| 72 virtual ProcessManagerDelegate* GetProcessManagerDelegate() const override; | 70 ProcessManagerDelegate* GetProcessManagerDelegate() const override; |
| 73 virtual scoped_ptr<ExtensionHostDelegate> CreateExtensionHostDelegate() | 71 scoped_ptr<ExtensionHostDelegate> CreateExtensionHostDelegate() override; |
| 72 bool DidVersionUpdate(content::BrowserContext* context) override; |
| 73 void PermitExternalProtocolHandler() override; |
| 74 scoped_ptr<AppSorting> CreateAppSorting() override; |
| 75 bool IsRunningInForcedAppMode() override; |
| 76 ApiActivityMonitor* GetApiActivityMonitor( |
| 77 content::BrowserContext* context) override; |
| 78 ExtensionSystemProvider* GetExtensionSystemFactory() override; |
| 79 void RegisterExtensionFunctions( |
| 80 ExtensionFunctionRegistry* registry) const override; |
| 81 scoped_ptr<RuntimeAPIDelegate> CreateRuntimeAPIDelegate( |
| 82 content::BrowserContext* context) const override; |
| 83 ComponentExtensionResourceManager* GetComponentExtensionResourceManager() |
| 74 override; | 84 override; |
| 75 virtual bool DidVersionUpdate(content::BrowserContext* context) override; | 85 void BroadcastEventToRenderers(const std::string& event_name, |
| 76 virtual void PermitExternalProtocolHandler() override; | 86 scoped_ptr<base::ListValue> args) override; |
| 77 virtual scoped_ptr<AppSorting> CreateAppSorting() override; | 87 net::NetLog* GetNetLog() override; |
| 78 virtual bool IsRunningInForcedAppMode() override; | 88 ExtensionCache* GetExtensionCache() override; |
| 79 virtual ApiActivityMonitor* GetApiActivityMonitor( | 89 bool IsBackgroundUpdateAllowed() override; |
| 80 content::BrowserContext* context) override; | 90 bool IsMinBrowserVersionSupported(const std::string& min_version) override; |
| 81 virtual ExtensionSystemProvider* GetExtensionSystemFactory() override; | |
| 82 virtual void RegisterExtensionFunctions( | |
| 83 ExtensionFunctionRegistry* registry) const override; | |
| 84 virtual scoped_ptr<RuntimeAPIDelegate> CreateRuntimeAPIDelegate( | |
| 85 content::BrowserContext* context) const override; | |
| 86 virtual ComponentExtensionResourceManager* | |
| 87 GetComponentExtensionResourceManager() override; | |
| 88 virtual void BroadcastEventToRenderers( | |
| 89 const std::string& event_name, | |
| 90 scoped_ptr<base::ListValue> args) override; | |
| 91 virtual net::NetLog* GetNetLog() override; | |
| 92 virtual ExtensionCache* GetExtensionCache() override; | |
| 93 virtual bool IsBackgroundUpdateAllowed() override; | |
| 94 virtual bool IsMinBrowserVersionSupported( | |
| 95 const std::string& min_version) override; | |
| 96 | 91 |
| 97 private: | 92 private: |
| 98 content::BrowserContext* main_context_; // Not owned. | 93 content::BrowserContext* main_context_; // Not owned. |
| 99 content::BrowserContext* incognito_context_; // Not owned, defaults to NULL. | 94 content::BrowserContext* incognito_context_; // Not owned, defaults to NULL. |
| 100 | 95 |
| 101 // Not owned, defaults to NULL. | 96 // Not owned, defaults to NULL. |
| 102 ProcessManagerDelegate* process_manager_delegate_; | 97 ProcessManagerDelegate* process_manager_delegate_; |
| 103 | 98 |
| 104 // Not owned, defaults to NULL. | 99 // Not owned, defaults to NULL. |
| 105 ExtensionSystemProvider* extension_system_factory_; | 100 ExtensionSystemProvider* extension_system_factory_; |
| 106 | 101 |
| 107 scoped_ptr<ExtensionCache> extension_cache_; | 102 scoped_ptr<ExtensionCache> extension_cache_; |
| 108 | 103 |
| 109 DISALLOW_COPY_AND_ASSIGN(TestExtensionsBrowserClient); | 104 DISALLOW_COPY_AND_ASSIGN(TestExtensionsBrowserClient); |
| 110 }; | 105 }; |
| 111 | 106 |
| 112 } // namespace extensions | 107 } // namespace extensions |
| 113 | 108 |
| 114 #endif // EXTENSIONS_BROWSER_TEST_EXTENSIONS_BROWSER_CLIENT_H_ | 109 #endif // EXTENSIONS_BROWSER_TEST_EXTENSIONS_BROWSER_CLIENT_H_ |
| OLD | NEW |