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 3 // found in the LICENSE file. 4 5 #include "extensions/test/test_extensions_client.h" 6 7 #include "extensions/common/common_manifest_handlers.h" 8 #include "extensions/common/features/feature_provider.h" 9 #include "extensions/common/features/json_feature_provider_source.h" 10 #include "extensions/common/manifest_handler.h" 11 #include "extensions/common/url_pattern_set.h" 12 #include "extensions/test/test_permission_message_provider.h" 13 14 namespace extensions { 15 TestExtensionsClient()16TestExtensionsClient::TestExtensionsClient() { 17 } 18 ~TestExtensionsClient()19TestExtensionsClient::~TestExtensionsClient() { 20 } 21 Initialize()22void TestExtensionsClient::Initialize() { 23 // Registration could already be finalized in unit tests, where the utility 24 // thread runs in-process. 25 if (!ManifestHandler::IsRegistrationFinalized()) { 26 RegisterCommonManifestHandlers(); 27 ManifestHandler::FinalizeRegistration(); 28 } 29 } 30 31 const PermissionMessageProvider& GetPermissionMessageProvider() const32TestExtensionsClient::GetPermissionMessageProvider() const { 33 static TestPermissionMessageProvider provider; 34 return provider; 35 } 36 37 // TODO(yoz): Implement something reasonable here. CreateFeatureProvider(const std::string & name) const38scoped_ptr<FeatureProvider> TestExtensionsClient::CreateFeatureProvider( 39 const std::string& name) const { 40 return scoped_ptr<FeatureProvider>(); 41 } 42 43 // TODO(yoz): Implement something reasonable here. 44 scoped_ptr<JSONFeatureProviderSource> CreateFeatureProviderSource(const std::string & name) const45TestExtensionsClient::CreateFeatureProviderSource( 46 const std::string& name) const { 47 return scoped_ptr<JSONFeatureProviderSource>(); 48 } 49 FilterHostPermissions(const URLPatternSet & hosts,URLPatternSet * new_hosts,std::set<PermissionMessage> * messages) const50void TestExtensionsClient::FilterHostPermissions( 51 const URLPatternSet& hosts, 52 URLPatternSet* new_hosts, 53 std::set<PermissionMessage>* messages) const { 54 } 55 SetScriptingWhitelist(const ExtensionsClient::ScriptingWhitelist & whitelist)56void TestExtensionsClient::SetScriptingWhitelist( 57 const ExtensionsClient::ScriptingWhitelist& whitelist) { 58 scripting_whitelist_ = whitelist; 59 } 60 61 const ExtensionsClient::ScriptingWhitelist& GetScriptingWhitelist() const62TestExtensionsClient::GetScriptingWhitelist() const { 63 return scripting_whitelist_; 64 } 65 GetPermittedChromeSchemeHosts(const Extension * extension,const APIPermissionSet & api_permissions) const66URLPatternSet TestExtensionsClient::GetPermittedChromeSchemeHosts( 67 const Extension* extension, 68 const APIPermissionSet& api_permissions) const { 69 URLPatternSet hosts; 70 return hosts; 71 } 72 IsScriptableURL(const GURL & url,std::string * error) const73bool TestExtensionsClient::IsScriptableURL(const GURL& url, 74 std::string* error) const { 75 return true; 76 } 77 IsAPISchemaGenerated(const std::string & name) const78bool TestExtensionsClient::IsAPISchemaGenerated( 79 const std::string& name) const { 80 return false; 81 } 82 GetAPISchema(const std::string & name) const83base::StringPiece TestExtensionsClient::GetAPISchema( 84 const std::string& name) const { 85 return base::StringPiece(); 86 } 87 RegisterAPISchemaResources(ExtensionAPI * api) const88void TestExtensionsClient::RegisterAPISchemaResources(ExtensionAPI* api) const { 89 } 90 ShouldSuppressFatalErrors() const91bool TestExtensionsClient::ShouldSuppressFatalErrors() const { 92 return true; 93 } 94 95 } // namespace extensions 96