diff options
author | dennisjeffrey@chromium.org <dennisjeffrey@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2011-05-31 22:25:09 +0000 |
---|---|---|
committer | dennisjeffrey@chromium.org <dennisjeffrey@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2011-05-31 22:25:09 +0000 |
commit | dfb03af1c83b0b1ee40b60adfef0db582b260c0f (patch) | |
tree | 919617f808870821cbd5cbf9150f9c0155b7f410 /chrome/browser/automation | |
parent | e209977189446f056b095bf1100f1cbc91e357c1 (diff) | |
download | chromium_src-dfb03af1c83b0b1ee40b60adfef0db582b260c0f.zip chromium_src-dfb03af1c83b0b1ee40b60adfef0db582b260c0f.tar.gz chromium_src-dfb03af1c83b0b1ee40b60adfef0db582b260c0f.tar.bz2 |
Automation hook GetExtensionsInfo now returns both regular/effective host permission info.
Previously, the PyAuto automation hook GetExtensionsInfo returned only the
effective host permission information. The hook has been enhanced to also
return the regular host permission information. The hook also now returns
only the unique host permissions, whereas previously, duplicate permissions
were sometimes returned.
BUG=None
TEST=None
Review URL: http://codereview.chromium.org/6962017
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@87378 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome/browser/automation')
-rw-r--r-- | chrome/browser/automation/testing_automation_provider.cc | 16 |
1 files changed, 12 insertions, 4 deletions
diff --git a/chrome/browser/automation/testing_automation_provider.cc b/chrome/browser/automation/testing_automation_provider.cc index b597482..6636b31 100644 --- a/chrome/browser/automation/testing_automation_provider.cc +++ b/chrome/browser/automation/testing_automation_provider.cc @@ -4073,14 +4073,19 @@ void TestingAutomationProvider::GetThemeInfo( namespace { -ListValue* GetHostPermissions(const Extension* ext) { +ListValue* GetHostPermissions(const Extension* ext, bool effective_perm) { + URLPatternList pattern_list; + if (effective_perm) + pattern_list = ext->GetEffectiveHostPermissions().patterns(); + else + pattern_list = ext->host_permissions(); + ListValue* permissions = new ListValue; - const URLPatternList pattern_list = - ext->GetEffectiveHostPermissions().patterns(); for (URLPatternList::const_iterator perm = pattern_list.begin(); perm != pattern_list.end(); ++perm) { permissions->Append(new StringValue(perm->GetAsString())); } + return permissions; } @@ -4124,7 +4129,10 @@ void TestingAutomationProvider::GetExtensionsInfo( extension->background_url().spec()); extension_value->SetString("options_url", extension->options_url().spec()); - extension_value->Set("host_permissions", GetHostPermissions(extension)); + extension_value->Set("host_permissions", + GetHostPermissions(extension, false)); + extension_value->Set("effective_host_permissions", + GetHostPermissions(extension, true)); extension_value->Set("api_permissions", GetAPIPermissions(extension)); extensions_values->Append(extension_value); } |