Home | History | Annotate | Download | only in extensions

Lines Matching refs:extension

5 #include "chrome/common/extensions/extension.h"
64 ASSERT_EQ(0, Extension::INVALID);
65 ASSERT_EQ(1, Extension::INTERNAL);
66 ASSERT_EQ(2, Extension::EXTERNAL_PREF);
67 ASSERT_EQ(3, Extension::EXTERNAL_REGISTRY);
68 ASSERT_EQ(4, Extension::LOAD);
69 ASSERT_EQ(5, Extension::COMPONENT);
70 ASSERT_EQ(6, Extension::EXTERNAL_PREF_DOWNLOAD);
71 ASSERT_EQ(7, Extension::EXTERNAL_POLICY_DOWNLOAD);
75 for (int i = 0; i < Extension::NUM_LOCATIONS; i++) {
76 Extension::Location loc = static_cast<Extension::Location>(i);
79 if (loc == Extension::INVALID)
85 // Check that no install source can override a componenet extension.
86 ASSERT_EQ(Extension::COMPONENT,
87 Extension::GetHigherPriorityLocation(Extension::COMPONENT, loc));
88 ASSERT_EQ(Extension::COMPONENT,
89 Extension::GetHigherPriorityLocation(loc, Extension::COMPONENT));
94 Extension::GetHigherPriorityLocation(Extension::INTERNAL, loc));
96 Extension::GetHigherPriorityLocation(loc, Extension::INTERNAL));
100 ASSERT_EQ(Extension::EXTERNAL_POLICY_DOWNLOAD,
101 Extension::GetHigherPriorityLocation(
102 Extension::EXTERNAL_POLICY_DOWNLOAD,
103 Extension::EXTERNAL_PREF));
105 ASSERT_EQ(Extension::EXTERNAL_PREF,
106 Extension::GetHigherPriorityLocation(
107 Extension::INTERNAL,
108 Extension::EXTERNAL_PREF));
124 scoped_refptr<Extension> extension_ptr(new Extension(path,
125 Extension::INVALID));
126 Extension& extension = *extension_ptr;
130 // Start with a valid extension manifest
138 .Append(Extension::kManifestFilename);
147 ASSERT_TRUE(extension.InitFromValue(*valid_value, Extension::REQUIRE_KEY,
150 EXPECT_EQ("en_US", extension.default_locale());
157 EXPECT_FALSE(extension.InitFromValue(*input_value, Extension::REQUIRE_KEY,
162 EXPECT_FALSE(extension.InitFromValue(*input_value, Extension::REQUIRE_KEY,
169 EXPECT_FALSE(extension.InitFromValue(*input_value, Extension::REQUIRE_KEY,
174 EXPECT_FALSE(extension.InitFromValue(*input_value, Extension::REQUIRE_KEY,
181 EXPECT_FALSE(extension.InitFromValue(*input_value, Extension::REQUIRE_KEY,
188 EXPECT_FALSE(extension.InitFromValue(*input_value, Extension::REQUIRE_KEY,
198 EXPECT_FALSE(extension.InitFromValue(*input_value, Extension::REQUIRE_KEY,
205 EXPECT_FALSE(extension.InitFromValue(*input_value, Extension::REQUIRE_KEY,
215 EXPECT_FALSE(extension.InitFromValue(*input_value, Extension::REQUIRE_KEY,
225 EXPECT_FALSE(extension.InitFromValue(*input_value, Extension::REQUIRE_KEY,
230 EXPECT_FALSE(extension.InitFromValue(*input_value, Extension::REQUIRE_KEY,
236 EXPECT_FALSE(extension.InitFromValue(*input_value, Extension::REQUIRE_KEY,
242 EXPECT_FALSE(extension.InitFromValue(*input_value, Extension::REQUIRE_KEY,
247 EXPECT_FALSE(extension.InitFromValue(*input_value, Extension::REQUIRE_KEY,
257 EXPECT_FALSE(extension.InitFromValue(*input_value, Extension::REQUIRE_KEY,
262 EXPECT_FALSE(extension.InitFromValue(*input_value, Extension::REQUIRE_KEY,
268 EXPECT_FALSE(extension.InitFromValue(*input_value, Extension::REQUIRE_KEY,
275 EXPECT_FALSE(extension.InitFromValue(*input_value, Extension::REQUIRE_KEY,
281 EXPECT_FALSE(extension.InitFromValue(*input_value, Extension::REQUIRE_KEY,
288 EXPECT_FALSE(extension.InitFromValue(*input_value, Extension::REQUIRE_KEY,
296 EXPECT_FALSE(extension.InitFromValue(*input_value, Extension::REQUIRE_KEY,
302 EXPECT_TRUE(extension.InitFromValue(*input_value, Extension::REQUIRE_KEY,
311 EXPECT_TRUE(extension.InitFromValue(*input_value, Extension::REQUIRE_KEY,
315 EXPECT_FALSE(extension.InitFromValue(*input_value, Extension::REQUIRE_KEY,
322 EXPECT_FALSE(extension.InitFromValue(*input_value, Extension::REQUIRE_KEY,
329 EXPECT_TRUE(extension.InitFromValue(*input_value, Extension::REQUIRE_KEY,
341 EXPECT_FALSE(extension.InitFromValue(*input_value, Extension::REQUIRE_KEY,
348 EXPECT_FALSE(extension.InitFromValue(*input_value, Extension::REQUIRE_KEY,
355 EXPECT_FALSE(extension.InitFromValue(*input_value, Extension::REQUIRE_KEY,
360 EXPECT_FALSE(extension.InitFromValue(*input_value, Extension::REQUIRE_KEY,
367 EXPECT_FALSE(extension.InitFromValue(*input_value, Extension::REQUIRE_KEY,
375 EXPECT_FALSE(extension.InitFromValue(*input_value, Extension::REQUIRE_KEY,
387 scoped_refptr<Extension> extension_ptr(new Extension(path,
388 Extension::INVALID));
389 Extension& extension = *extension_ptr;
393 // Test minimal extension
395 extension");
397 EXPECT_TRUE(extension.InitFromValue(input_value, Extension::NO_FLAGS,
400 EXPECT_TRUE(Extension::IdIsValid(extension.id()));
401 EXPECT_EQ("1.0.0.0", extension.VersionString());
402 EXPECT_EQ("my extension", extension.name());
403 EXPECT_EQ(extension.id(), extension.url().host());
404 EXPECT_EQ(path.value(), extension.path().value());
413 EXPECT_TRUE(extension.InitFromValue(input_value, Extension::NO_FLAGS,
419 EXPECT_TRUE(extension.InitFromValue(input_value, Extension::NO_FLAGS,
422 EXPECT_EQ("chrome-extension", extension.options_url().scheme());
423 EXPECT_EQ("/options.html", extension.options_url().path());
429 EXPECT_TRUE(extension.InitFromValue(input_value, Extension::NO_FLAGS,
437 EXPECT_TRUE(extension.InitFromValue(input_value, Extension::NO_FLAGS,
440 // The minimum chrome version is not stored in the Extension object.
458 scoped_refptr<Extension> extension_ptr(new Extension(path,
459 Extension::INVALID));
460 Extension& extension = *extension_ptr;
468 EXPECT_TRUE(extension.InitFromValue(input_value, Extension::NO_FLAGS,
473 EXPECT_EQ(localized_name, UTF8ToWide(extension.name()));
478 EXPECT_TRUE(extension.InitFromValue(input_value, Extension::NO_FLAGS,
483 EXPECT_EQ(localized_name, UTF8ToWide(extension.name()));
501 input_value.SetString(keys::kName, "my extension");
502 scoped_refptr<Extension> extension(Extension::Create(path,
503 Extension::INVALID, input_value, Extension::STRICT_ERROR_CHECKS, NULL));
504 EXPECT_TRUE(extension.get());
506 EXPECT_EQ(extension->url().spec() + "bar/baz.js",
507 Extension::GetResourceURL(extension->url(), "bar/baz.js").spec());
508 EXPECT_EQ(extension->url().spec() + "baz.js",
509 Extension::GetResourceURL(extension->url(),
511 EXPECT_EQ(extension->url().spec() + "baz.js",
512 Extension::GetResourceURL(extension->url(), "../baz.js").spec());
517 FilePath path(base::StringPrintf(L"c:\\extension"));
519 FilePath path(base::StringPrintf("/extension"));
521 scoped_refptr<Extension> extension_ptr(new Extension(path,
522 Extension::INVALID));
523 Extension& extension = *extension_ptr;
529 action.reset(extension.LoadExtensionActionHelper(&input, &error_msg));
548 action.reset(extension.LoadExtensionActionHelper(&input, &error_msg));
560 action.reset(extension.LoadExtensionActionHelper(&input, &error_msg));
571 action.reset(extension.LoadExtensionActionHelper(copy.get(), &error_msg));
577 action.reset(extension.LoadExtensionActionHelper(copy.get(), &error_msg));
585 action.reset(extension.LoadExtensionActionHelper(copy.get(), &error_msg));
602 action.reset(extension.LoadExtensionActionHelper(&input, &error_msg));
612 action.reset(extension.LoadExtensionActionHelper(&input, &error_msg));
620 action.reset(extension.LoadExtensionActionHelper(&input, &error_msg));
626 action.reset(extension.LoadExtensionActionHelper(&input, &error_msg));
637 // LoadExtensionActionHelper expects the extension member |extension_url|
639 extension.extension_url_ =
646 action.reset(extension.LoadExtensionActionHelper(&input, &error_msg));
650 extension.url().Resolve(kPopupHtmlFile).spec().c_str(),
655 action.reset(extension.LoadExtensionActionHelper(&input, &error_msg));
667 action.reset(extension.LoadExtensionActionHelper(&input, &error_msg));
671 extension.url().Resolve(kPopupHtmlFile).spec().c_str(),
677 action.reset(extension.LoadExtensionActionHelper(&input, &error_msg));
688 action.reset(extension.LoadExtensionActionHelper(&input, &error_msg));
698 EXPECT_TRUE(Extension::IdIsValid("aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa"));
699 EXPECT_TRUE(Extension::IdIsValid("pppppppppppppppppppppppppppppppp"));
700 EXPECT_TRUE(Extension::IdIsValid("abcdefghijklmnopabcdefghijklmnop"));
701 EXPECT_TRUE(Extension::IdIsValid("ABCDEFGHIJKLMNOPABCDEFGHIJKLMNOP"));
702 EXPECT_FALSE(Extension::IdIsValid("abcdefghijklmnopabcdefghijklmno"));
703 EXPECT_FALSE(Extension::IdIsValid("abcdefghijklmnopabcdefghijklmnopa"));
704 EXPECT_FALSE(Extension::IdIsValid("0123456789abcdef0123456789abcdef"));
705 EXPECT_FALSE(Extension::IdIsValid("abcdefghijklmnopabcdefghijklmnoq"));
706 EXPECT_FALSE(Extension::IdIsValid("abcdefghijklmnopabcdefghijklmno0"));
729 Extension::GenerateId(
751 FilePath path(base::StringPrintf(L"c:\\extension%Iu", i));
753 FilePath path(base::StringPrintf("/extension%" PRIuS, i));
761 scoped_refptr<Extension> extension(Extension::Create(
762 path, Extension::INVALID, input_value, Extension::STRICT_ERROR_CHECKS,
764 EXPECT_TRUE(extension.get()) << error;
777 FilePath path(base::StringPrintf(L"c:\\extension%Iu", i));
779 FilePath path(base::StringPrintf("/extension%" PRIuS, i));
786 scoped_refptr<Extension> extension(Extension::Create(
787 path, Extension::INVALID, input_value, Extension::STRICT_ERROR_CHECKS,
789 EXPECT_FALSE(extension.get());
807 EXPECT_EQ(std::string(Extension::kMimeType), result);
818 static scoped_refptr<Extension> LoadManifest(const std::string& dir,
835 scoped_refptr<Extension> extension = Extension::Create(
836 path.DirName(), Extension::INVALID,
838 Extension::STRICT_ERROR_CHECKS | extra_flags, &error);
839 EXPECT_TRUE(extension) << error;
840 return extension;
843 static scoped_refptr<Extension> LoadManifest(const std::string& dir,
845 return LoadManifest(dir, test_file, Extension::NO_FLAGS);
849 scoped_refptr<Extension> extension;
852 extension = LoadManifest("effective_host_permissions", "empty.json");
853 EXPECT_EQ(0u, extension->GetEffectiveHostPermissions().patterns().size());
855 EXPECT_FALSE(extension->HasEffectiveAccessToAllHosts());
857 extension = LoadManifest("effective_host_permissions", "one_host.json");
858 hosts = extension->GetEffectiveHostPermissions();
861 EXPECT_FALSE(extension->HasEffectiveAccessToAllHosts());
863 extension = LoadManifest("effective_host_permissions",
865 hosts = extension->GetEffectiveHostPermissions();
868 EXPECT_FALSE(extension->HasEffectiveAccessToAllHosts());
870 extension = LoadManifest("effective_host_permissions", "two_hosts.json");
871 hosts = extension->GetEffectiveHostPermissions();
874 EXPECT_FALSE(extension->HasEffectiveAccessToAllHosts());
876 extension = LoadManifest("effective_host_permissions",
878 hosts = extension->GetEffectiveHostPermissions();
881 EXPECT_FALSE(extension->HasEffectiveAccessToAllHosts());
883 extension = LoadManifest("effective_host_permissions",
885 hosts = extension->GetEffectiveHostPermissions();
889 EXPECT_FALSE(extension->HasEffectiveAccessToAllHosts());
891 extension = LoadManifest("effective_host_permissions", "all_hosts.json");
892 hosts = extension->GetEffectiveHostPermissions();
896 EXPECT_TRUE(extension->HasEffectiveAccessToAllHosts());
898 extension = LoadManifest("effective_host_permissions", "all_hosts2.json");
899 hosts = extension->GetEffectiveHostPermissions();
902 EXPECT_TRUE(extension->HasEffectiveAccessToAllHosts());
904 extension = LoadManifest("effective_host_permissions", "all_hosts3.json");
905 hosts = extension->GetEffectiveHostPermissions();
909 EXPECT_TRUE(extension->HasEffectiveAccessToAllHosts());
972 scoped_refptr<Extension> old_extension(
975 scoped_refptr<Extension> new_extension(
992 Extension::IsPrivilegeIncrease(kTests[i].full_access,
1008 skip.insert(Extension::kContextMenusPermission);
1009 skip.insert(Extension::kIdlePermission);
1010 skip.insert(Extension::kNotificationPermission);
1011 skip.insert(Extension::kUnlimitedStoragePermission);
1012 skip.insert(Extension::kContentSettingsPermission);
1015 skip.insert(Extension::kBackgroundPermission);
1019 skip.insert(Extension::kCookiePermission);
1022 skip.insert(Extension::kProxyPermission);
1026 skip.insert(Extension::kFileBrowserHandlerPermission);
1030 skip.insert(Extension::kExperimentalPermission);
1033 skip.insert(Extension::kWebstorePrivatePermission);
1034 skip.insert(Extension::kFileBrowserPrivatePermission);
1035 skip.insert(Extension::kChromeosInfoPrivatePermissions);
1037 const Extension::PermissionMessage::MessageId ID_NONE =
1038 Extension::PermissionMessage::ID_NONE;
1040 for (size_t i = 0; i < Extension::kNumPermissions; ++i) {
1041 Extension::Permission permission = Extension::kPermissions[i];
1069 // Initialize the Extension.
1074 scoped_refptr<Extension> extension(Extension::Create(
1075 path, Extension::INVALID, values, Extension::STRICT_ERROR_CHECKS,
1077 ASSERT_TRUE(extension.get());
1081 ExtensionResource resource(extension->id(),
1082 extension->path(),
1086 FilePath icon_absolute_path = extension->path().Append(icon_relative_path);
1108 EXPECT_FALSE(extension->HasCachedImage(resource, size16));
1109 extension->SetCachedImage(resource, image16, original_size);
1110 EXPECT_TRUE(extension->HasCachedImage(resource, size16));
1111 EXPECT_TRUE(SizeEquals(extension->GetCachedImage(resource, size16), size16));
1112 EXPECT_FALSE(extension->HasCachedImage(resource, size24));
1113 EXPECT_FALSE(extension->HasCachedImage(resource, original_size));
1116 extension->SetCachedImage(resource, image24, original_size);
1117 EXPECT_TRUE(extension->HasCachedImage(resource, size24));
1118 EXPECT_TRUE(SizeEquals(extension->GetCachedImage(resource, size24), size24));
1119 EXPECT_FALSE(extension->HasCachedImage(resource, original_size));
1126 extension->SetCachedImage(resource, image, original_size);
1127 EXPECT_TRUE(extension->HasCachedImage(resource, original_size));
1128 EXPECT_TRUE(extension->HasCachedImage(resource, size128));
1129 EXPECT_TRUE(SizeEquals(extension->GetCachedImage(resource, original_size),
1131 EXPECT_TRUE(SizeEquals(extension->GetCachedImage(resource, size128),
1133 EXPECT_EQ(extension->GetCachedImage(resource, original_size).getPixels(),
1134 extension->GetCachedImage(resource, size128).getPixels());
1152 EXPECT_STREQ(old_unlimited, Extension::kOldUnlimitedStoragePermission);
1156 // Initialize the extension and make sure the permission for unlimited storage
1159 scoped_refptr<Extension> extension(Extension::Create(
1160 extension_path, Extension::INVALID, dictionary,
1161 Extension::STRICT_ERROR_CHECKS, &errors));
1162 EXPECT_TRUE(extension.get());
1163 EXPECT_TRUE(extension->HasApiPermission(
1164 Extension::kUnlimitedStoragePermission));
1180 { "extension", true },
1199 scoped_refptr<Extension> extension;
1200 extension = LoadManifest("empty_manifest", "empty.json");
1204 extension->HasApiPermission(kTests[i].permission_name))
1210 scoped_refptr<Extension> extension;
1211 extension = LoadManifest("permissions", "many-hosts.json");
1212 std::vector<string16> warnings = extension->GetPermissionMessageStrings();
1219 scoped_refptr<Extension> extension;
1220 extension = LoadManifest("permissions", "plugins.json");
1221 std::vector<string16> warnings = extension->GetPermissionMessageStrings();
1234 scoped_refptr<Extension> extension;
1238 extension = LoadManifest("permissions", "permissions_all_urls.json");
1239 EXPECT_TRUE(extension->wants_file_access());
1240 EXPECT_FALSE(extension->CanExecuteScriptOnPage(file_url, NULL, NULL));
1241 extension = LoadManifest(
1242 "permissions", "permissions_all_urls.json", Extension::ALLOW_FILE_ACCESS);
1243 EXPECT_TRUE(extension->wants_file_access());
1244 EXPECT_TRUE(extension->CanExecuteScriptOnPage(file_url, NULL, NULL));
1247 extension = LoadManifest("permissions", "permissions_file_scheme.json");
1248 EXPECT_TRUE(extension->wants_file_access());
1249 EXPECT_FALSE(extension->CanExecuteScriptOnPage(file_url, NULL, NULL));
1250 extension = LoadManifest("permissions", "permissions_file_scheme.json",
1251 Extension::ALLOW_FILE_ACCESS);
1252 EXPECT_TRUE(extension->wants_file_access());
1253 EXPECT_TRUE(extension->CanExecuteScriptOnPage(file_url, NULL, NULL));
1256 extension = LoadManifest("permissions", "permissions_http_scheme.json");
1257 EXPECT_FALSE(extension->wants_file_access());
1258 EXPECT_FALSE(extension->CanExecuteScriptOnPage(file_url, NULL, NULL));
1259 extension = LoadManifest("permissions", "permissions_http_scheme.json",
1260 Extension::ALLOW_FILE_ACCESS);
1261 EXPECT_FALSE(extension->wants_file_access());
1262 EXPECT_FALSE(extension->CanExecuteScriptOnPage(file_url, NULL, NULL));
1265 extension = LoadManifest("permissions", "content_script_all_urls.json");
1266 EXPECT_TRUE(extension->wants_file_access());
1267 EXPECT_FALSE(extension->CanExecuteScriptOnPage(
1268 file_url, &extension->content_scripts()[0], NULL));
1269 extension = LoadManifest("permissions", "content_script_all_urls.json",
1270 Extension::ALLOW_FILE_ACCESS);
1271 EXPECT_TRUE(extension->wants_file_access());
1272 EXPECT_TRUE(extension->CanExecuteScriptOnPage(
1273 file_url, &extension->content_scripts()[0], NULL));
1276 extension = LoadManifest("permissions", "content_script_file_scheme.json");
1277 EXPECT_TRUE(extension->wants_file_access());
1278 EXPECT_FALSE(extension->CanExecuteScriptOnPage(
1279 file_url, &extension->content_scripts()[0], NULL));
1280 extension = LoadManifest("permissions", "content_script_file_scheme.json",
1281 Extension::ALLOW_FILE_ACCESS);
1282 EXPECT_TRUE(extension->wants_file_access());
1283 EXPECT_TRUE(extension->CanExecuteScriptOnPage(
1284 file_url, &extension->content_scripts()[0], NULL));
1287 extension = LoadManifest("permissions", "content_script_http_scheme.json");
1288 EXPECT_FALSE(extension->wants_file_access());
1289 EXPECT_FALSE(extension->CanExecuteScriptOnPage(
1290 file_url, &extension->content_scripts()[0], NULL));
1291 extension = LoadManifest("permissions", "content_script_http_scheme.json",
1292 Extension::ALLOW_FILE_ACCESS);
1293 EXPECT_FALSE(extension->wants_file_access());
1294 EXPECT_FALSE(extension->CanExecuteScriptOnPage(
1295 file_url, &extension->content_scripts()[0], NULL));
1299 // methods of Extension for extensions with various permissions.
1306 scoped_refptr<Extension> MakeExtension(const std::string& permissions,
1307 Extension::Location location) {
1329 scoped_refptr<Extension> extension = Extension::Create(
1333 Extension::STRICT_ERROR_CHECKS,
1335 if (!extension)
1337 return extension;
1340 bool Allowed(const Extension* extension, const GURL& url) {
1341 return (extension->CanExecuteScriptOnPage(url, NULL, NULL) &&
1342 extension->CanCaptureVisiblePage(url, NULL));
1345 bool CaptureOnly(const Extension* extension, const GURL& url) {
1346 return !extension->CanExecuteScriptOnPage(url, NULL, NULL) &&
1347 extension->CanCaptureVisiblePage(url, NULL);
1350 bool Blocked(const Extension* extension, const GURL& url) {
1351 return !(extension->CanExecuteScriptOnPage(url, NULL, NULL) ||
1352 extension->CanCaptureVisiblePage(url, NULL));
1360 scoped_refptr<Extension> extension;
1372 Extension::GenerateIdForPath(FilePath(FILE_PATH_LITERAL("whatever")));
1375 GURL extension_url("chrome-extension://" + dummy_id);
1380 extension = MakeExtension("['tabs','<all_urls>']", Extension::INTERNAL);
1381 EXPECT_TRUE(Allowed(extension, http_url));
1382 EXPECT_TRUE(Allowed(extension, https_url));
1383 EXPECT_TRUE(Blocked(extension, file_url));
1384 EXPECT_TRUE(Blocked(extension, settings_url));
1385 EXPECT_TRUE(CaptureOnly(extension, favicon_url));
1386 EXPECT_TRUE(Blocked(extension, about_url));
1387 EXPECT_TRUE(Blocked(extension, extension_url));
1389 EXPECT_FALSE(extension->HasHostPermission(settings_url));
1390 EXPECT_FALSE(extension->HasHostPermission(about_url));
1391 EXPECT_TRUE(extension->HasHostPermission(favicon_url));
1394 extension = MakeExtension("['tabs','*://*/']", Extension::INTERNAL);
1395 EXPECT_TRUE(Allowed(extension, http_url));
1396 EXPECT_TRUE(Allowed(extension, https_url));
1397 EXPECT_TRUE(Blocked(extension, settings_url));
1398 EXPECT_TRUE(Blocked(extension, about_url));
1399 EXPECT_TRUE(Blocked(extension, file_url));
1400 EXPECT_TRUE(Blocked(extension, favicon_url));
1401 extension = MakeExtension("['tabs','*://settings/*']", Extension::INTERNAL);
1402 EXPECT_TRUE(Blocked(extension, settings_url));
1406 extension = MakeExtension("['tabs','chrome://*/']",
1407 Extension::INTERNAL);
1408 EXPECT_TRUE(extension == NULL);
1411 extension = MakeExtension("['tabs','chrome://favicon/*']",
1412 Extension::INTERNAL);
1413 EXPECT_TRUE(Blocked(extension, settings_url));
1414 EXPECT_TRUE(CaptureOnly(extension, favicon_url));
1415 EXPECT_TRUE(Blocked(extension, about_url));
1416 EXPECT_TRUE(extension->HasHostPermission(favicon_url));
1419 extension = MakeExtension("['tabs', 'http://favicon/']", Extension::INTERNAL);
1420 EXPECT_TRUE(Blocked(extension, settings_url));
1421 EXPECT_TRUE(Blocked(extension, favicon_url));
1424 extension = MakeExtension("['tabs','<all_urls>']", Extension::COMPONENT);
1425 EXPECT_TRUE(Allowed(extension, http_url));
1426 EXPECT_TRUE(Allowed(extension, https_url));
1427 EXPECT_TRUE(Allowed(extension, settings_url));
1428 EXPECT_TRUE(Allowed(extension, about_url));
1429 EXPECT_TRUE(Allowed(extension, favicon_url));
1430 EXPECT_TRUE(extension->HasHostPermission(favicon_url));
1433 extension = MakeExtension("['tabs', 'http://www.google.com/']",
1434 Extension::COMPONENT);
1435 EXPECT_TRUE(Allowed(extension, http_url));
1436 EXPECT_TRUE(Blocked(extension, https_url));
1437 EXPECT_TRUE(Blocked(extension, file_url));
1438 EXPECT_TRUE(Blocked(extension, settings_url));
1439 EXPECT_TRUE(Blocked(extension, favicon_url));
1440 EXPECT_TRUE(Blocked(extension, about_url));
1441 EXPECT_TRUE(Blocked(extension, extension_url));
1442 EXPECT_FALSE(extension->HasHostPermission(settings_url));
1464 Extension::GetDistinctHostsForDisplay(actual));
1476 Extension::GetDistinctHostsForDisplay(actual));
1486 Extension::GetDistinctHostsForDisplay(actual));
1496 Extension::GetDistinctHostsForDisplay(actual));
1512 Extension::GetDistinctHostsForDisplay(actual));
1542 Extension::GetDistinctHostsForDisplay(actual));
1554 Extension::GetDistinctHostsForDisplay(actual));
1577 Extension::GetDistinctHostsForDisplay(actual));
1598 Extension::GetDistinctHostsForDisplay(actual));
1618 Extension::GetDistinctHostsForDisplay(actual));
1637 Extension::GetDistinctHostsForDisplay(actual));
1655 EXPECT_FALSE(Extension::IsElevatedHostList(list1, list2));
1656 EXPECT_FALSE(Extension::IsElevatedHostList(list2, list1));
1662 EXPECT_FALSE(Extension::IsElevatedHostList(list1, list2));
1663 EXPECT_FALSE(Extension::IsElevatedHostList(list2, list1));
1669 EXPECT_FALSE(Extension::IsElevatedHostList(list1, list2));
1670 EXPECT_FALSE(Extension::IsElevatedHostList(list2, list1));
1676 EXPECT_TRUE(Extension::IsElevatedHostList(list1, list2));
1678 //EXPECT_FALSE(Extension::IsElevatedHostList(list2, list1));
1686 EXPECT_TRUE(Extension::IsElevatedHostList(list1, list2));
1687 EXPECT_FALSE(Extension::IsElevatedHostList(list2, list1));
1693 EXPECT_TRUE(Extension::IsElevatedHostList(list1, list2));
1694 EXPECT_TRUE(Extension::IsElevatedHostList(list2, list1));
1699 EXPECT_TRUE(Extension::GenerateId("", &result));
1701 EXPECT_TRUE(Extension::GenerateId("test", &result));
1704 EXPECT_TRUE(Extension::GenerateId("_", &result));
1707 EXPECT_TRUE(Extension::GenerateId(