Index: chrome/common/extensions/extension_unittest.cc |
=================================================================== |
--- chrome/common/extensions/extension_unittest.cc (revision 56058) |
+++ chrome/common/extensions/extension_unittest.cc (working copy) |
@@ -26,6 +26,8 @@ |
#include "gfx/codec/png_codec.h" |
#include "net/base/mime_sniffer.h" |
#include "skia/ext/image_operations.h" |
+#include "chrome/test/ui_test_utils.h" |
+#include "net/base/mock_host_resolver.h" |
#include "testing/gtest/include/gtest/gtest.h" |
namespace keys = extension_manifest_keys; |
@@ -317,10 +319,10 @@ |
ListValue* permissions = new ListValue; |
permissions->Set(0, Value::CreateStringValue("file:///C:/foo.txt")); |
input_value.Set(keys::kPermissions, permissions); |
- EXPECT_FALSE(extension.InitFromValue(input_value, false, &error)); |
- EXPECT_TRUE(MatchPatternASCII(error, errors::kInvalidPermission)); |
- input_value.Remove(keys::kPermissions, NULL); |
- error.clear(); |
+ EXPECT_FALSE(extension.InitFromValue(input_value, false, &error)); |
+ EXPECT_TRUE(MatchPatternASCII(error, errors::kInvalidPermission)); |
+ input_value.Remove(keys::kPermissions, NULL); |
+ error.clear(); |
// Test with an options page. |
input_value.SetString(keys::kOptionsPage, "options.html"); |
@@ -730,85 +732,85 @@ |
TEST(ExtensionTest, EffectiveHostPermissions) { |
scoped_ptr<Extension> extension; |
- std::set<std::string> hosts; |
+ ExtensionExtent hosts; |
extension.reset(LoadManifest("effective_host_permissions", "empty.json")); |
- EXPECT_EQ(0u, extension->GetEffectiveHostPermissions().size()); |
+ EXPECT_EQ(0u, extension->GetEffectiveHostPermissions().patterns().size()); |
EXPECT_FALSE(extension->HasAccessToAllHosts()); |
extension.reset(LoadManifest("effective_host_permissions", "one_host.json")); |
hosts = extension->GetEffectiveHostPermissions(); |
- EXPECT_EQ(1u, hosts.size()); |
- EXPECT_TRUE(hosts.find("www.google.com") != hosts.end()); |
+ EXPECT_EQ(1u, hosts.patterns().size()); |
+ EXPECT_TRUE(hosts.ContainsURL(GURL("http://www.google.com"))); |
EXPECT_FALSE(extension->HasAccessToAllHosts()); |
extension.reset(LoadManifest("effective_host_permissions", |
"one_host_wildcard.json")); |
hosts = extension->GetEffectiveHostPermissions(); |
- EXPECT_EQ(1u, hosts.size()); |
- EXPECT_TRUE(hosts.find("google.com") != hosts.end()); |
+ EXPECT_EQ(1u, hosts.patterns().size()); |
+ EXPECT_TRUE(hosts.ContainsURL(GURL("http://google.com"))); |
EXPECT_FALSE(extension->HasAccessToAllHosts()); |
extension.reset(LoadManifest("effective_host_permissions", |
"two_hosts.json")); |
hosts = extension->GetEffectiveHostPermissions(); |
- EXPECT_EQ(2u, hosts.size()); |
- EXPECT_TRUE(hosts.find("www.google.com") != hosts.end()); |
- EXPECT_TRUE(hosts.find("www.reddit.com") != hosts.end()); |
+ EXPECT_EQ(2u, hosts.patterns().size()); |
+ EXPECT_TRUE(hosts.ContainsURL(GURL("http://www.google.com"))); |
+ EXPECT_TRUE(hosts.ContainsURL(GURL("http://www.reddit.com"))); |
EXPECT_FALSE(extension->HasAccessToAllHosts()); |
extension.reset(LoadManifest("effective_host_permissions", |
"duplicate_host.json")); |
hosts = extension->GetEffectiveHostPermissions(); |
- EXPECT_EQ(1u, hosts.size()); |
- EXPECT_TRUE(hosts.find("google.com") != hosts.end()); |
+ EXPECT_EQ(1u, hosts.patterns().size()); |
+ EXPECT_TRUE(hosts.ContainsURL(GURL("http://google.com"))); |
EXPECT_FALSE(extension->HasAccessToAllHosts()); |
extension.reset(LoadManifest("effective_host_permissions", |
"https_not_considered.json")); |
hosts = extension->GetEffectiveHostPermissions(); |
- EXPECT_EQ(1u, hosts.size()); |
- EXPECT_TRUE(hosts.find("google.com") != hosts.end()); |
+ EXPECT_EQ(1u, hosts.patterns().size()); |
+ EXPECT_TRUE(hosts.ContainsURL(GURL("http://google.com"))); |
EXPECT_FALSE(extension->HasAccessToAllHosts()); |
extension.reset(LoadManifest("effective_host_permissions", |
"two_content_scripts.json")); |
hosts = extension->GetEffectiveHostPermissions(); |
- EXPECT_EQ(3u, hosts.size()); |
- EXPECT_TRUE(hosts.find("google.com") != hosts.end()); |
- EXPECT_TRUE(hosts.find("www.reddit.com") != hosts.end()); |
- EXPECT_TRUE(hosts.find("news.ycombinator.com") != hosts.end()); |
+ EXPECT_EQ(3u, hosts.patterns().size()); |
+ EXPECT_TRUE(hosts.ContainsURL(GURL("http://google.com"))); |
+ EXPECT_TRUE(hosts.ContainsURL(GURL("http://www.reddit.com"))); |
+ EXPECT_TRUE(hosts.ContainsURL(GURL("http://news.ycombinator.com"))); |
EXPECT_FALSE(extension->HasAccessToAllHosts()); |
extension.reset(LoadManifest("effective_host_permissions", |
"duplicate_content_script.json")); |
hosts = extension->GetEffectiveHostPermissions(); |
- EXPECT_EQ(2u, hosts.size()); |
- EXPECT_TRUE(hosts.find("google.com") != hosts.end()); |
- EXPECT_TRUE(hosts.find("www.reddit.com") != hosts.end()); |
+ EXPECT_EQ(3u, hosts.patterns().size()); |
+ EXPECT_TRUE(hosts.ContainsURL(GURL("http://google.com"))); |
+ EXPECT_TRUE(hosts.ContainsURL(GURL("http://www.reddit.com"))); |
EXPECT_FALSE(extension->HasAccessToAllHosts()); |
extension.reset(LoadManifest("effective_host_permissions", |
"all_hosts.json")); |
hosts = extension->GetEffectiveHostPermissions(); |
- EXPECT_EQ(1u, hosts.size()); |
- EXPECT_TRUE(hosts.find("") != hosts.end()); |
+ EXPECT_EQ(1u, hosts.patterns().size()); |
+ EXPECT_TRUE(hosts.ContainsURL(GURL("http://test/"))); |
EXPECT_TRUE(extension->HasAccessToAllHosts()); |
extension.reset(LoadManifest("effective_host_permissions", |
"all_hosts2.json")); |
hosts = extension->GetEffectiveHostPermissions(); |
- EXPECT_EQ(2u, hosts.size()); |
- EXPECT_TRUE(hosts.find("") != hosts.end()); |
- EXPECT_TRUE(hosts.find("www.google.com") != hosts.end()); |
+ EXPECT_EQ(2u, hosts.patterns().size()); |
+ EXPECT_TRUE(hosts.ContainsURL(GURL("http://test/"))); |
+ EXPECT_TRUE(hosts.ContainsURL(GURL("http://www.google.com"))); |
EXPECT_TRUE(extension->HasAccessToAllHosts()); |
extension.reset(LoadManifest("effective_host_permissions", |
"all_hosts3.json")); |
hosts = extension->GetEffectiveHostPermissions(); |
- EXPECT_EQ(2u, hosts.size()); |
- EXPECT_TRUE(hosts.find("") != hosts.end()); |
- EXPECT_TRUE(hosts.find("www.google.com") != hosts.end()); |
+ EXPECT_EQ(2u, hosts.patterns().size()); |
+ EXPECT_TRUE(hosts.ContainsURL(GURL("https://test/"))); |
+ EXPECT_TRUE(hosts.ContainsURL(GURL("http://www.google.com"))); |
EXPECT_TRUE(extension->HasAccessToAllHosts()); |
} |