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

Unified Diff: chrome/browser/content_settings/content_settings_origin_identifier_value_map_unittest.cc

Issue 2812113004: Write last_modified date to Content Settings in the PrefProvider (Closed)
Patch Set: rebase Created 3 years, 8 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
Index: chrome/browser/content_settings/content_settings_origin_identifier_value_map_unittest.cc
diff --git a/chrome/browser/content_settings/content_settings_origin_identifier_value_map_unittest.cc b/chrome/browser/content_settings/content_settings_origin_identifier_value_map_unittest.cc
index b1532b9221c17befe55a1d9b6b1e2fd2747afd95..ca78f210a593791694612ec33fbd32d613b07b69 100644
--- a/chrome/browser/content_settings/content_settings_origin_identifier_value_map_unittest.cc
+++ b/chrome/browser/content_settings/content_settings_origin_identifier_value_map_unittest.cc
@@ -22,7 +22,7 @@ TEST(OriginIdentifierValueMapTest, SetGetValue) {
std::string()));
map.SetValue(ContentSettingsPattern::FromString("[*.]google.com"),
ContentSettingsPattern::FromString("[*.]google.com"),
- CONTENT_SETTINGS_TYPE_COOKIES, std::string(),
+ CONTENT_SETTINGS_TYPE_COOKIES, std::string(), base::Time(),
new base::Value(1));
std::unique_ptr<base::Value> expected_value(new base::Value(1));
@@ -66,7 +66,7 @@ TEST(OriginIdentifierValueMapTest, SetDeleteValue) {
// Set sample values.
map.SetValue(ContentSettingsPattern::FromString("[*.]google.com"),
ContentSettingsPattern::FromString("[*.]google.com"),
- CONTENT_SETTINGS_TYPE_PLUGINS, "java-plugin",
+ CONTENT_SETTINGS_TYPE_PLUGINS, "java-plugin", base::Time(),
new base::Value(1));
int actual_value;
@@ -115,11 +115,11 @@ TEST(OriginIdentifierValueMapTest, Clear) {
// Set two values.
map.SetValue(ContentSettingsPattern::FromString("[*.]google.com"),
ContentSettingsPattern::FromString("[*.]google.com"),
- CONTENT_SETTINGS_TYPE_PLUGINS, "java-plugin",
+ CONTENT_SETTINGS_TYPE_PLUGINS, "java-plugin", base::Time(),
new base::Value(1));
map.SetValue(ContentSettingsPattern::FromString("[*.]google.com"),
ContentSettingsPattern::FromString("[*.]google.com"),
- CONTENT_SETTINGS_TYPE_COOKIES, std::string(),
+ CONTENT_SETTINGS_TYPE_COOKIES, std::string(), base::Time(),
new base::Value(1));
EXPECT_FALSE(map.empty());
int actual_value;
@@ -143,12 +143,12 @@ TEST(OriginIdentifierValueMapTest, ListEntryPrecedences) {
map.SetValue(ContentSettingsPattern::FromString("[*.]google.com"),
ContentSettingsPattern::FromString("[*.]google.com"),
- CONTENT_SETTINGS_TYPE_COOKIES, std::string(),
+ CONTENT_SETTINGS_TYPE_COOKIES, std::string(), base::Time(),
new base::Value(1));
map.SetValue(ContentSettingsPattern::FromString("www.google.com"),
ContentSettingsPattern::FromString("[*.]google.com"),
- CONTENT_SETTINGS_TYPE_COOKIES, std::string(),
+ CONTENT_SETTINGS_TYPE_COOKIES, std::string(), base::Time(),
new base::Value(2));
int actual_value;
@@ -180,11 +180,13 @@ TEST(OriginIdentifierValueMapTest, IterateNonempty) {
ContentSettingsPattern::FromString("[*.]google.com");
ContentSettingsPattern sub_pattern =
ContentSettingsPattern::FromString("sub.google.com");
+ base::Time t1 = base::Time::Now();
+ base::Time t2 = t1 + base::TimeDelta::FromSeconds(1);
map.SetValue(pattern, ContentSettingsPattern::Wildcard(),
- CONTENT_SETTINGS_TYPE_COOKIES, std::string(),
+ CONTENT_SETTINGS_TYPE_COOKIES, std::string(), t1,
new base::Value(1));
map.SetValue(sub_pattern, ContentSettingsPattern::Wildcard(),
- CONTENT_SETTINGS_TYPE_COOKIES, std::string(),
+ CONTENT_SETTINGS_TYPE_COOKIES, std::string(), t2,
new base::Value(2));
std::unique_ptr<content_settings::RuleIterator> rule_iterator(
@@ -193,9 +195,75 @@ TEST(OriginIdentifierValueMapTest, IterateNonempty) {
content_settings::Rule rule = rule_iterator->Next();
EXPECT_EQ(sub_pattern, rule.primary_pattern);
EXPECT_EQ(2, content_settings::ValueToContentSetting(rule.value.get()));
+ EXPECT_EQ(t2,
+ map.GetLastModified(rule.primary_pattern, rule.secondary_pattern,
+ CONTENT_SETTINGS_TYPE_COOKIES, std::string()));
ASSERT_TRUE(rule_iterator->HasNext());
rule = rule_iterator->Next();
EXPECT_EQ(pattern, rule.primary_pattern);
EXPECT_EQ(1, content_settings::ValueToContentSetting(rule.value.get()));
+ EXPECT_EQ(t1,
+ map.GetLastModified(rule.primary_pattern, rule.secondary_pattern,
+ CONTENT_SETTINGS_TYPE_COOKIES, std::string()));
+}
+
+TEST(OriginIdentifierValueMapTest, UpdateLastModified) {
+ // Verify that the last_modified timestamp is updated.
+ content_settings::OriginIdentifierValueMap map;
+ ContentSettingsPattern pattern =
+ ContentSettingsPattern::FromString("[*.]google.com");
+ ContentSettingsPattern sub_pattern =
+ ContentSettingsPattern::FromString("sub.google.com");
+
+ base::Time t1 = base::Time::Now();
+ map.SetValue(pattern, ContentSettingsPattern::Wildcard(),
+ CONTENT_SETTINGS_TYPE_COOKIES, std::string(), t1,
+ new base::Value(1));
+ map.SetValue(sub_pattern, ContentSettingsPattern::Wildcard(),
+ CONTENT_SETTINGS_TYPE_COOKIES, std::string(), t1,
+ new base::Value(2));
+
+ {
+ std::unique_ptr<content_settings::RuleIterator> rule_iterator(
+ map.GetRuleIterator(CONTENT_SETTINGS_TYPE_COOKIES, std::string(),
+ NULL));
+ ASSERT_TRUE(rule_iterator->HasNext());
+ content_settings::Rule rule = rule_iterator->Next();
+ EXPECT_EQ(sub_pattern, rule.primary_pattern);
+ EXPECT_EQ(2, content_settings::ValueToContentSetting(rule.value.get()));
+ EXPECT_EQ(
+ t1, map.GetLastModified(rule.primary_pattern, rule.secondary_pattern,
+ CONTENT_SETTINGS_TYPE_COOKIES, std::string()));
+ rule = rule_iterator->Next();
+ EXPECT_EQ(pattern, rule.primary_pattern);
+ EXPECT_EQ(1, content_settings::ValueToContentSetting(rule.value.get()));
+ EXPECT_EQ(
+ t1, map.GetLastModified(rule.primary_pattern, rule.secondary_pattern,
+ CONTENT_SETTINGS_TYPE_COOKIES, std::string()));
+ ASSERT_FALSE(rule_iterator->HasNext());
+ }
+ base::Time t2 = t1 + base::TimeDelta::FromSeconds(1);
+ map.SetValue(pattern, ContentSettingsPattern::Wildcard(),
+ CONTENT_SETTINGS_TYPE_COOKIES, std::string(), t2,
+ new base::Value(3));
+
+ {
+ std::unique_ptr<content_settings::RuleIterator> rule_iterator =
+ map.GetRuleIterator(CONTENT_SETTINGS_TYPE_COOKIES, std::string(), NULL);
+ ASSERT_TRUE(rule_iterator->HasNext());
+ content_settings::Rule rule = rule_iterator->Next();
+ EXPECT_EQ(sub_pattern, rule.primary_pattern);
+ EXPECT_EQ(2, content_settings::ValueToContentSetting(rule.value.get()));
+ EXPECT_EQ(
+ t1, map.GetLastModified(rule.primary_pattern, rule.secondary_pattern,
+ CONTENT_SETTINGS_TYPE_COOKIES, std::string()));
+ rule = rule_iterator->Next();
+ EXPECT_EQ(pattern, rule.primary_pattern);
+ EXPECT_EQ(3, content_settings::ValueToContentSetting(rule.value.get()));
+ EXPECT_EQ(
+ t2, map.GetLastModified(rule.primary_pattern, rule.secondary_pattern,
+ CONTENT_SETTINGS_TYPE_COOKIES, std::string()));
+ ASSERT_FALSE(rule_iterator->HasNext());
+ }
}

Powered by Google App Engine
This is Rietveld 408576698