Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(2072)

Unified Diff: chrome/browser/host_content_settings_map_unittest.cc

Issue 2878075: Introduce a resource identifier for content settings. (Closed)
Patch Set: updates Created 10 years, 4 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « chrome/browser/host_content_settings_map.cc ('k') | chrome/browser/in_process_webkit/dom_storage_area.cc » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: chrome/browser/host_content_settings_map_unittest.cc
diff --git a/chrome/browser/host_content_settings_map_unittest.cc b/chrome/browser/host_content_settings_map_unittest.cc
index 87826a044557101f8590ef88b727b3737ac4cdf6..7690c86e550f225de38789da6ae8dbbe35f70080 100644
--- a/chrome/browser/host_content_settings_map_unittest.cc
+++ b/chrome/browser/host_content_settings_map_unittest.cc
@@ -4,7 +4,11 @@
#include "chrome/browser/host_content_settings_map.h"
+#include "base/command_line.h"
+#include "base/json/json_reader.h"
+#include "base/json/json_writer.h"
#include "chrome/browser/pref_service.h"
+#include "chrome/common/chrome_switches.h"
#include "chrome/common/notification_registrar.h"
#include "chrome/common/notification_service.h"
#include "chrome/common/pref_names.h"
@@ -83,7 +87,7 @@ TEST_F(HostContentSettingsMapTest, DefaultValues) {
CONTENT_SETTINGS_TYPE_IMAGES));
EXPECT_EQ(CONTENT_SETTING_ALLOW, host_content_settings_map->GetContentSetting(
GURL(chrome::kChromeUINewTabURL),
- CONTENT_SETTINGS_TYPE_IMAGES));
+ CONTENT_SETTINGS_TYPE_IMAGES, ""));
host_content_settings_map->SetDefaultContentSetting(
CONTENT_SETTINGS_TYPE_PLUGINS, CONTENT_SETTING_ASK);
EXPECT_EQ(CONTENT_SETTING_ASK,
@@ -104,35 +108,35 @@ TEST_F(HostContentSettingsMapTest, DefaultValues) {
HostContentSettingsMap::Pattern pattern("[*.]example.com");
EXPECT_EQ(CONTENT_SETTING_ALLOW,
host_content_settings_map->GetContentSetting(
- host, CONTENT_SETTINGS_TYPE_IMAGES));
+ host, CONTENT_SETTINGS_TYPE_IMAGES, ""));
host_content_settings_map->SetContentSetting(pattern,
- CONTENT_SETTINGS_TYPE_IMAGES, CONTENT_SETTING_DEFAULT);
+ CONTENT_SETTINGS_TYPE_IMAGES, "", CONTENT_SETTING_DEFAULT);
EXPECT_EQ(CONTENT_SETTING_ALLOW,
host_content_settings_map->GetContentSetting(
- host, CONTENT_SETTINGS_TYPE_IMAGES));
+ host, CONTENT_SETTINGS_TYPE_IMAGES, ""));
host_content_settings_map->SetContentSetting(pattern,
- CONTENT_SETTINGS_TYPE_IMAGES, CONTENT_SETTING_BLOCK);
+ CONTENT_SETTINGS_TYPE_IMAGES, "", CONTENT_SETTING_BLOCK);
EXPECT_EQ(CONTENT_SETTING_BLOCK,
host_content_settings_map->GetContentSetting(
- host, CONTENT_SETTINGS_TYPE_IMAGES));
+ host, CONTENT_SETTINGS_TYPE_IMAGES, ""));
EXPECT_EQ(CONTENT_SETTING_ALLOW,
host_content_settings_map->GetContentSetting(
- host, CONTENT_SETTINGS_TYPE_PLUGINS));
+ host, CONTENT_SETTINGS_TYPE_PLUGINS, ""));
// Check returning all settings for a host.
ContentSettings desired_settings;
desired_settings.settings[CONTENT_SETTINGS_TYPE_COOKIES] =
CONTENT_SETTING_ALLOW;
host_content_settings_map->SetContentSetting(pattern,
- CONTENT_SETTINGS_TYPE_IMAGES, CONTENT_SETTING_DEFAULT);
+ CONTENT_SETTINGS_TYPE_IMAGES, "", CONTENT_SETTING_DEFAULT);
desired_settings.settings[CONTENT_SETTINGS_TYPE_IMAGES] =
CONTENT_SETTING_ALLOW;
host_content_settings_map->SetContentSetting(pattern,
- CONTENT_SETTINGS_TYPE_JAVASCRIPT, CONTENT_SETTING_BLOCK);
+ CONTENT_SETTINGS_TYPE_JAVASCRIPT, "", CONTENT_SETTING_BLOCK);
desired_settings.settings[CONTENT_SETTINGS_TYPE_JAVASCRIPT] =
CONTENT_SETTING_BLOCK;
host_content_settings_map->SetContentSetting(pattern,
- CONTENT_SETTINGS_TYPE_PLUGINS, CONTENT_SETTING_ALLOW);
+ CONTENT_SETTINGS_TYPE_PLUGINS, "", CONTENT_SETTING_ALLOW);
desired_settings.settings[CONTENT_SETTINGS_TYPE_PLUGINS] =
CONTENT_SETTING_ALLOW;
desired_settings.settings[CONTENT_SETTINGS_TYPE_POPUPS] =
@@ -148,41 +152,44 @@ TEST_F(HostContentSettingsMapTest, DefaultValues) {
// Check returning all hosts for a setting.
HostContentSettingsMap::Pattern pattern2("[*.]example.org");
host_content_settings_map->SetContentSetting(pattern2,
- CONTENT_SETTINGS_TYPE_IMAGES, CONTENT_SETTING_BLOCK);
+ CONTENT_SETTINGS_TYPE_IMAGES, "", CONTENT_SETTING_BLOCK);
host_content_settings_map->SetContentSetting(pattern2,
- CONTENT_SETTINGS_TYPE_PLUGINS, CONTENT_SETTING_BLOCK);
+ CONTENT_SETTINGS_TYPE_PLUGINS, "", CONTENT_SETTING_BLOCK);
HostContentSettingsMap::SettingsForOneType host_settings;
host_content_settings_map->GetSettingsForOneType(CONTENT_SETTINGS_TYPE_IMAGES,
+ "",
&host_settings);
EXPECT_EQ(1U, host_settings.size());
host_content_settings_map->GetSettingsForOneType(
- CONTENT_SETTINGS_TYPE_PLUGINS, &host_settings);
+ CONTENT_SETTINGS_TYPE_PLUGINS, "", &host_settings);
EXPECT_EQ(2U, host_settings.size());
host_content_settings_map->GetSettingsForOneType(CONTENT_SETTINGS_TYPE_POPUPS,
+ "",
&host_settings);
EXPECT_EQ(0U, host_settings.size());
host_content_settings_map->ResetToDefaults();
host_content_settings_map->GetSettingsForOneType(
- CONTENT_SETTINGS_TYPE_PLUGINS, &host_settings);
+ CONTENT_SETTINGS_TYPE_PLUGINS, "", &host_settings);
EXPECT_EQ(0U, host_settings.size());
// Check clearing one type.
HostContentSettingsMap::Pattern pattern3("[*.]example.net");
host_content_settings_map->SetContentSetting(pattern,
- CONTENT_SETTINGS_TYPE_IMAGES, CONTENT_SETTING_BLOCK);
+ CONTENT_SETTINGS_TYPE_IMAGES, "", CONTENT_SETTING_BLOCK);
host_content_settings_map->SetContentSetting(pattern2,
- CONTENT_SETTINGS_TYPE_IMAGES, CONTENT_SETTING_BLOCK);
+ CONTENT_SETTINGS_TYPE_IMAGES, "", CONTENT_SETTING_BLOCK);
host_content_settings_map->SetContentSetting(pattern2,
- CONTENT_SETTINGS_TYPE_PLUGINS, CONTENT_SETTING_BLOCK);
+ CONTENT_SETTINGS_TYPE_PLUGINS, "", CONTENT_SETTING_BLOCK);
host_content_settings_map->SetContentSetting(pattern3,
- CONTENT_SETTINGS_TYPE_IMAGES, CONTENT_SETTING_BLOCK);
+ CONTENT_SETTINGS_TYPE_IMAGES, "", CONTENT_SETTING_BLOCK);
host_content_settings_map->ClearSettingsForOneType(
CONTENT_SETTINGS_TYPE_IMAGES);
host_content_settings_map->GetSettingsForOneType(CONTENT_SETTINGS_TYPE_IMAGES,
+ "",
&host_settings);
EXPECT_EQ(0U, host_settings.size());
host_content_settings_map->GetSettingsForOneType(
- CONTENT_SETTINGS_TYPE_PLUGINS, &host_settings);
+ CONTENT_SETTINGS_TYPE_PLUGINS, "", &host_settings);
EXPECT_EQ(1U, host_settings.size());
}
@@ -198,23 +205,23 @@ TEST_F(HostContentSettingsMapTest, Patterns) {
HostContentSettingsMap::Pattern pattern2("example.org");
EXPECT_EQ(CONTENT_SETTING_ALLOW,
host_content_settings_map->GetContentSetting(
- host1, CONTENT_SETTINGS_TYPE_IMAGES));
+ host1, CONTENT_SETTINGS_TYPE_IMAGES, ""));
host_content_settings_map->SetContentSetting(pattern1,
- CONTENT_SETTINGS_TYPE_IMAGES, CONTENT_SETTING_BLOCK);
+ CONTENT_SETTINGS_TYPE_IMAGES, "", CONTENT_SETTING_BLOCK);
EXPECT_EQ(CONTENT_SETTING_BLOCK,
host_content_settings_map->GetContentSetting(
- host1, CONTENT_SETTINGS_TYPE_IMAGES));
+ host1, CONTENT_SETTINGS_TYPE_IMAGES, ""));
EXPECT_EQ(CONTENT_SETTING_BLOCK,
host_content_settings_map->GetContentSetting(
- host2, CONTENT_SETTINGS_TYPE_IMAGES));
+ host2, CONTENT_SETTINGS_TYPE_IMAGES, ""));
EXPECT_EQ(CONTENT_SETTING_ALLOW,
host_content_settings_map->GetContentSetting(
- host3, CONTENT_SETTINGS_TYPE_IMAGES));
+ host3, CONTENT_SETTINGS_TYPE_IMAGES, ""));
host_content_settings_map->SetContentSetting(pattern2,
- CONTENT_SETTINGS_TYPE_IMAGES, CONTENT_SETTING_BLOCK);
+ CONTENT_SETTINGS_TYPE_IMAGES, "", CONTENT_SETTING_BLOCK);
EXPECT_EQ(CONTENT_SETTING_BLOCK,
host_content_settings_map->GetContentSetting(
- host3, CONTENT_SETTINGS_TYPE_IMAGES));
+ host3, CONTENT_SETTINGS_TYPE_IMAGES, ""));
}
TEST_F(HostContentSettingsMapTest, PatternSupport) {
@@ -248,7 +255,7 @@ TEST_F(HostContentSettingsMapTest, Observer) {
HostContentSettingsMap::Pattern pattern("[*.]example.com");
host_content_settings_map->SetContentSetting(pattern,
- CONTENT_SETTINGS_TYPE_IMAGES, CONTENT_SETTING_ALLOW);
+ CONTENT_SETTINGS_TYPE_IMAGES, "", CONTENT_SETTING_ALLOW);
EXPECT_EQ(host_content_settings_map, observer.last_notifier);
EXPECT_EQ(pattern, observer.last_pattern);
EXPECT_FALSE(observer.last_update_all);
@@ -293,7 +300,7 @@ TEST_F(HostContentSettingsMapTest, ObserveDefaultPref) {
CONTENT_SETTINGS_TYPE_COOKIES, CONTENT_SETTING_BLOCK);
EXPECT_EQ(CONTENT_SETTING_BLOCK,
host_content_settings_map->GetContentSetting(
- host, CONTENT_SETTINGS_TYPE_COOKIES));
+ host, CONTENT_SETTINGS_TYPE_COOKIES, ""));
// Make a copy of the pref's new value so we can reset it later.
scoped_ptr<Value> new_value(prefs->FindPreference(
@@ -303,13 +310,13 @@ TEST_F(HostContentSettingsMapTest, ObserveDefaultPref) {
prefs->Set(prefs::kDefaultContentSettings, *default_value);
EXPECT_EQ(CONTENT_SETTING_ALLOW,
host_content_settings_map->GetContentSetting(
- host, CONTENT_SETTINGS_TYPE_COOKIES));
+ host, CONTENT_SETTINGS_TYPE_COOKIES, ""));
// Reseting the pref to its previous value should update the cache.
prefs->Set(prefs::kDefaultContentSettings, *new_value);
EXPECT_EQ(CONTENT_SETTING_BLOCK,
host_content_settings_map->GetContentSetting(
- host, CONTENT_SETTINGS_TYPE_COOKIES));
+ host, CONTENT_SETTINGS_TYPE_COOKIES, ""));
}
TEST_F(HostContentSettingsMapTest, ObserveExceptionPref) {
@@ -327,10 +334,10 @@ TEST_F(HostContentSettingsMapTest, ObserveExceptionPref) {
GURL host("http://example.com");
host_content_settings_map->SetContentSetting(pattern,
- CONTENT_SETTINGS_TYPE_COOKIES, CONTENT_SETTING_BLOCK);
+ CONTENT_SETTINGS_TYPE_COOKIES, "", CONTENT_SETTING_BLOCK);
EXPECT_EQ(CONTENT_SETTING_BLOCK,
host_content_settings_map->GetContentSetting(
- host, CONTENT_SETTINGS_TYPE_COOKIES));
+ host, CONTENT_SETTINGS_TYPE_COOKIES, ""));
// Make a copy of the pref's new value so we can reset it later.
scoped_ptr<Value> new_value(prefs->FindPreference(
@@ -340,13 +347,13 @@ TEST_F(HostContentSettingsMapTest, ObserveExceptionPref) {
prefs->Set(prefs::kContentSettingsPatterns, *default_value);
EXPECT_EQ(CONTENT_SETTING_ALLOW,
host_content_settings_map->GetContentSetting(
- host, CONTENT_SETTINGS_TYPE_COOKIES));
+ host, CONTENT_SETTINGS_TYPE_COOKIES, ""));
// Reseting the pref to its previous value should update the cache.
prefs->Set(prefs::kContentSettingsPatterns, *new_value);
EXPECT_EQ(CONTENT_SETTING_BLOCK,
host_content_settings_map->GetContentSetting(
- host, CONTENT_SETTINGS_TYPE_COOKIES));
+ host, CONTENT_SETTINGS_TYPE_COOKIES, ""));
}
TEST_F(HostContentSettingsMapTest, HostTrimEndingDotCheck) {
@@ -359,73 +366,73 @@ TEST_F(HostContentSettingsMapTest, HostTrimEndingDotCheck) {
EXPECT_EQ(CONTENT_SETTING_ALLOW,
host_content_settings_map->GetContentSetting(
- host_ending_with_dot, CONTENT_SETTINGS_TYPE_IMAGES));
+ host_ending_with_dot, CONTENT_SETTINGS_TYPE_IMAGES, ""));
host_content_settings_map->SetContentSetting(pattern,
- CONTENT_SETTINGS_TYPE_IMAGES, CONTENT_SETTING_DEFAULT);
+ CONTENT_SETTINGS_TYPE_IMAGES, "", CONTENT_SETTING_DEFAULT);
EXPECT_EQ(CONTENT_SETTING_ALLOW,
host_content_settings_map->GetContentSetting(
- host_ending_with_dot, CONTENT_SETTINGS_TYPE_IMAGES));
+ host_ending_with_dot, CONTENT_SETTINGS_TYPE_IMAGES, ""));
host_content_settings_map->SetContentSetting(pattern,
- CONTENT_SETTINGS_TYPE_IMAGES, CONTENT_SETTING_BLOCK);
+ CONTENT_SETTINGS_TYPE_IMAGES, "", CONTENT_SETTING_BLOCK);
EXPECT_EQ(CONTENT_SETTING_BLOCK,
host_content_settings_map->GetContentSetting(
- host_ending_with_dot, CONTENT_SETTINGS_TYPE_IMAGES));
+ host_ending_with_dot, CONTENT_SETTINGS_TYPE_IMAGES, ""));
EXPECT_EQ(CONTENT_SETTING_ALLOW,
host_content_settings_map->GetContentSetting(
- host_ending_with_dot, CONTENT_SETTINGS_TYPE_COOKIES));
+ host_ending_with_dot, CONTENT_SETTINGS_TYPE_COOKIES, ""));
host_content_settings_map->SetContentSetting(pattern,
- CONTENT_SETTINGS_TYPE_COOKIES, CONTENT_SETTING_DEFAULT);
+ CONTENT_SETTINGS_TYPE_COOKIES, "", CONTENT_SETTING_DEFAULT);
EXPECT_EQ(CONTENT_SETTING_ALLOW,
host_content_settings_map->GetContentSetting(
- host_ending_with_dot, CONTENT_SETTINGS_TYPE_COOKIES));
+ host_ending_with_dot, CONTENT_SETTINGS_TYPE_COOKIES, ""));
host_content_settings_map->SetContentSetting(pattern,
- CONTENT_SETTINGS_TYPE_COOKIES, CONTENT_SETTING_BLOCK);
+ CONTENT_SETTINGS_TYPE_COOKIES, "", CONTENT_SETTING_BLOCK);
EXPECT_EQ(CONTENT_SETTING_BLOCK,
host_content_settings_map->GetContentSetting(
- host_ending_with_dot, CONTENT_SETTINGS_TYPE_COOKIES));
+ host_ending_with_dot, CONTENT_SETTINGS_TYPE_COOKIES, ""));
EXPECT_EQ(CONTENT_SETTING_ALLOW,
host_content_settings_map->GetContentSetting(
- host_ending_with_dot, CONTENT_SETTINGS_TYPE_JAVASCRIPT));
+ host_ending_with_dot, CONTENT_SETTINGS_TYPE_JAVASCRIPT, ""));
host_content_settings_map->SetContentSetting(pattern,
- CONTENT_SETTINGS_TYPE_JAVASCRIPT, CONTENT_SETTING_DEFAULT);
+ CONTENT_SETTINGS_TYPE_JAVASCRIPT, "", CONTENT_SETTING_DEFAULT);
EXPECT_EQ(CONTENT_SETTING_ALLOW,
host_content_settings_map->GetContentSetting(
- host_ending_with_dot, CONTENT_SETTINGS_TYPE_JAVASCRIPT));
+ host_ending_with_dot, CONTENT_SETTINGS_TYPE_JAVASCRIPT, ""));
host_content_settings_map->SetContentSetting(pattern,
- CONTENT_SETTINGS_TYPE_JAVASCRIPT, CONTENT_SETTING_BLOCK);
+ CONTENT_SETTINGS_TYPE_JAVASCRIPT, "", CONTENT_SETTING_BLOCK);
EXPECT_EQ(CONTENT_SETTING_BLOCK,
host_content_settings_map->GetContentSetting(
- host_ending_with_dot, CONTENT_SETTINGS_TYPE_JAVASCRIPT));
+ host_ending_with_dot, CONTENT_SETTINGS_TYPE_JAVASCRIPT, ""));
EXPECT_EQ(CONTENT_SETTING_ALLOW,
host_content_settings_map->GetContentSetting(
- host_ending_with_dot, CONTENT_SETTINGS_TYPE_PLUGINS));
+ host_ending_with_dot, CONTENT_SETTINGS_TYPE_PLUGINS, ""));
host_content_settings_map->SetContentSetting(pattern,
- CONTENT_SETTINGS_TYPE_PLUGINS, CONTENT_SETTING_DEFAULT);
+ CONTENT_SETTINGS_TYPE_PLUGINS, "", CONTENT_SETTING_DEFAULT);
EXPECT_EQ(CONTENT_SETTING_ALLOW,
host_content_settings_map->GetContentSetting(
- host_ending_with_dot, CONTENT_SETTINGS_TYPE_PLUGINS));
+ host_ending_with_dot, CONTENT_SETTINGS_TYPE_PLUGINS, ""));
host_content_settings_map->SetContentSetting(pattern,
- CONTENT_SETTINGS_TYPE_PLUGINS, CONTENT_SETTING_BLOCK);
+ CONTENT_SETTINGS_TYPE_PLUGINS, "", CONTENT_SETTING_BLOCK);
EXPECT_EQ(CONTENT_SETTING_BLOCK,
host_content_settings_map->GetContentSetting(
- host_ending_with_dot, CONTENT_SETTINGS_TYPE_PLUGINS));
+ host_ending_with_dot, CONTENT_SETTINGS_TYPE_PLUGINS, ""));
EXPECT_EQ(CONTENT_SETTING_BLOCK,
host_content_settings_map->GetContentSetting(
- host_ending_with_dot, CONTENT_SETTINGS_TYPE_POPUPS));
+ host_ending_with_dot, CONTENT_SETTINGS_TYPE_POPUPS, ""));
host_content_settings_map->SetContentSetting(pattern,
- CONTENT_SETTINGS_TYPE_POPUPS, CONTENT_SETTING_DEFAULT);
+ CONTENT_SETTINGS_TYPE_POPUPS, "", CONTENT_SETTING_DEFAULT);
EXPECT_EQ(CONTENT_SETTING_BLOCK,
host_content_settings_map->GetContentSetting(
- host_ending_with_dot, CONTENT_SETTINGS_TYPE_POPUPS));
+ host_ending_with_dot, CONTENT_SETTINGS_TYPE_POPUPS, ""));
host_content_settings_map->SetContentSetting(pattern,
- CONTENT_SETTINGS_TYPE_POPUPS, CONTENT_SETTING_ALLOW);
+ CONTENT_SETTINGS_TYPE_POPUPS, "", CONTENT_SETTING_ALLOW);
EXPECT_EQ(CONTENT_SETTING_ALLOW,
host_content_settings_map->GetContentSetting(
- host_ending_with_dot, CONTENT_SETTINGS_TYPE_POPUPS));
+ host_ending_with_dot, CONTENT_SETTINGS_TYPE_POPUPS, ""));
}
TEST_F(HostContentSettingsMapTest, NestedSettings) {
@@ -439,11 +446,11 @@ TEST_F(HostContentSettingsMapTest, NestedSettings) {
HostContentSettingsMap::Pattern pattern3("a.b.example.com");
host_content_settings_map->SetContentSetting(pattern1,
- CONTENT_SETTINGS_TYPE_IMAGES, CONTENT_SETTING_BLOCK);
+ CONTENT_SETTINGS_TYPE_IMAGES, "", CONTENT_SETTING_BLOCK);
host_content_settings_map->SetContentSetting(pattern2,
- CONTENT_SETTINGS_TYPE_COOKIES, CONTENT_SETTING_BLOCK);
+ CONTENT_SETTINGS_TYPE_COOKIES, "", CONTENT_SETTING_BLOCK);
host_content_settings_map->SetContentSetting(pattern3,
- CONTENT_SETTINGS_TYPE_PLUGINS, CONTENT_SETTING_BLOCK);
+ CONTENT_SETTINGS_TYPE_PLUGINS, "", CONTENT_SETTING_BLOCK);
host_content_settings_map->SetDefaultContentSetting(
CONTENT_SETTINGS_TYPE_JAVASCRIPT, CONTENT_SETTING_BLOCK);
@@ -493,32 +500,127 @@ TEST_F(HostContentSettingsMapTest, OffTheRecord) {
EXPECT_EQ(CONTENT_SETTING_ALLOW,
host_content_settings_map->GetContentSetting(
- host, CONTENT_SETTINGS_TYPE_IMAGES));
+ host, CONTENT_SETTINGS_TYPE_IMAGES, ""));
EXPECT_EQ(CONTENT_SETTING_ALLOW,
otr_map->GetContentSetting(
- host, CONTENT_SETTINGS_TYPE_IMAGES));
+ host, CONTENT_SETTINGS_TYPE_IMAGES, ""));
// Changing content settings on the main map should also affect the
// off-the-record map.
host_content_settings_map->SetContentSetting(pattern,
- CONTENT_SETTINGS_TYPE_IMAGES, CONTENT_SETTING_BLOCK);
+ CONTENT_SETTINGS_TYPE_IMAGES, "", CONTENT_SETTING_BLOCK);
EXPECT_EQ(CONTENT_SETTING_BLOCK,
host_content_settings_map->GetContentSetting(
- host, CONTENT_SETTINGS_TYPE_IMAGES));
+ host, CONTENT_SETTINGS_TYPE_IMAGES, ""));
EXPECT_EQ(CONTENT_SETTING_BLOCK,
otr_map->GetContentSetting(
- host, CONTENT_SETTINGS_TYPE_IMAGES));
+ host, CONTENT_SETTINGS_TYPE_IMAGES, ""));
// Changing content settings on the off-the-record map should NOT affect the
// main map.
otr_map->SetContentSetting(pattern,
- CONTENT_SETTINGS_TYPE_IMAGES, CONTENT_SETTING_ALLOW);
+ CONTENT_SETTINGS_TYPE_IMAGES, "", CONTENT_SETTING_ALLOW);
EXPECT_EQ(CONTENT_SETTING_BLOCK,
host_content_settings_map->GetContentSetting(
- host, CONTENT_SETTINGS_TYPE_IMAGES));
+ host, CONTENT_SETTINGS_TYPE_IMAGES, ""));
EXPECT_EQ(CONTENT_SETTING_ALLOW,
otr_map->GetContentSetting(
- host, CONTENT_SETTINGS_TYPE_IMAGES));
+ host, CONTENT_SETTINGS_TYPE_IMAGES, ""));
+}
+
+TEST_F(HostContentSettingsMapTest, NonDefaultSettings) {
+ TestingProfile profile;
+ HostContentSettingsMap* host_content_settings_map =
+ profile.GetHostContentSettingsMap();
+
+ GURL host("http://example.com/");
+ HostContentSettingsMap::Pattern pattern("[*.]example.com");
+
+ ContentSettings desired_settings(CONTENT_SETTING_DEFAULT);
+ ContentSettings settings =
+ host_content_settings_map->GetNonDefaultContentSettings(host);
+ EXPECT_TRUE(SettingsEqual(desired_settings, settings));
+
+ host_content_settings_map->SetContentSetting(pattern,
+ CONTENT_SETTINGS_TYPE_IMAGES, "", CONTENT_SETTING_BLOCK);
+ desired_settings.settings[CONTENT_SETTINGS_TYPE_IMAGES] =
+ CONTENT_SETTING_BLOCK;
+ settings =
+ host_content_settings_map->GetNonDefaultContentSettings(host);
+ EXPECT_TRUE(SettingsEqual(desired_settings, settings));
+}
+
+// TODO(bauerb): Enable once HostContentSettingsMap::RequiersResourceIdentifier
+// is changed.
+#if 0
+TEST_F(HostContentSettingsMapTest, ResourceIdentifier) {
+ // This feature is currently behind a flag.
+ CommandLine cl(*CommandLine::ForCurrentProcess());
+ CommandLine::ForCurrentProcess()->AppendSwitch(switches::kEnableClickToPlay);
+
+ TestingProfile profile;
+ HostContentSettingsMap* host_content_settings_map =
+ profile.GetHostContentSettingsMap();
+
+ GURL host("http://example.com/");
+ HostContentSettingsMap::Pattern pattern("[*.]example.com");
+ std::string resource1("someplugin");
+ std::string resource2("otherplugin");
+
+ EXPECT_EQ(CONTENT_SETTING_ALLOW,
+ host_content_settings_map->GetContentSetting(
+ host, CONTENT_SETTINGS_TYPE_PLUGINS, resource1));
+ host_content_settings_map->SetContentSetting(pattern,
+ CONTENT_SETTINGS_TYPE_PLUGINS, resource1, CONTENT_SETTING_BLOCK);
+ EXPECT_EQ(CONTENT_SETTING_BLOCK,
+ host_content_settings_map->GetContentSetting(
+ host, CONTENT_SETTINGS_TYPE_PLUGINS, resource1));
+ EXPECT_EQ(CONTENT_SETTING_ALLOW,
+ host_content_settings_map->GetContentSetting(
+ host, CONTENT_SETTINGS_TYPE_PLUGINS, resource2));
+ *CommandLine::ForCurrentProcess() = cl;
+}
+
+TEST_F(HostContentSettingsMapTest, ResourceIdentifierPrefs) {
+ // This feature is currently behind a flag.
+ CommandLine cl(*CommandLine::ForCurrentProcess());
+ CommandLine::ForCurrentProcess()->AppendSwitch(switches::kEnableClickToPlay);
+
+ TestingProfile profile;
+ profile.GetPrefs()->SetUserPref(prefs::kContentSettingsPatterns,
+ base::JSONReader::Read(
+ "{\"[*.]example.com\":{\"per_plugin\":{\"someplugin\":2}}}", false));
+ HostContentSettingsMap* host_content_settings_map =
+ profile.GetHostContentSettingsMap();
+
+ GURL host("http://example.com/");
+ HostContentSettingsMap::Pattern pattern("[*.]example.com");
+ std::string resource1("someplugin");
+ std::string resource2("otherplugin");
+
+ EXPECT_EQ(CONTENT_SETTING_BLOCK,
+ host_content_settings_map->GetContentSetting(
+ host, CONTENT_SETTINGS_TYPE_PLUGINS, resource1));
+
+ host_content_settings_map->SetContentSetting(pattern,
+ CONTENT_SETTINGS_TYPE_PLUGINS, resource1, CONTENT_SETTING_DEFAULT);
+
+ const DictionaryValue* content_setting_prefs =
+ profile.GetPrefs()->GetDictionary(prefs::kContentSettingsPatterns);
+ std::string prefs_as_json;
+ base::JSONWriter::Write(content_setting_prefs, false, &prefs_as_json);
+ EXPECT_STREQ("{}", prefs_as_json.c_str());
+
+ host_content_settings_map->SetContentSetting(pattern,
+ CONTENT_SETTINGS_TYPE_PLUGINS, resource2, CONTENT_SETTING_BLOCK);
+
+ content_setting_prefs =
+ profile.GetPrefs()->GetDictionary(prefs::kContentSettingsPatterns);
+ base::JSONWriter::Write(content_setting_prefs, false, &prefs_as_json);
+ EXPECT_STREQ("{\"[*.]example.com\":{\"per_plugin\":{\"otherplugin\":2}}}",
+ prefs_as_json.c_str());
+ *CommandLine::ForCurrentProcess() = cl;
}
+#endif
} // namespace
« no previous file with comments | « chrome/browser/host_content_settings_map.cc ('k') | chrome/browser/in_process_webkit/dom_storage_area.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698