summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authormarkusheintz@chromium.org <markusheintz@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2011-08-02 17:54:50 +0000
committermarkusheintz@chromium.org <markusheintz@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2011-08-02 17:54:50 +0000
commit8ba60db385437bf7af699cb9e85dde88faa032ba (patch)
tree04da419fe70149f03a3243d07d064fb5c79a730a
parent46738410eec77d31a95bb570188ab104eada073b (diff)
downloadchromium_src-8ba60db385437bf7af699cb9e85dde88faa032ba.zip
chromium_src-8ba60db385437bf7af699cb9e85dde88faa032ba.tar.gz
chromium_src-8ba60db385437bf7af699cb9e85dde88faa032ba.tar.bz2
Add a != operator to the ContentSettingsPattern class.
BUG=none TEST=content_settings_pattern_unittest.cc Review URL: http://codereview.chromium.org/7549006 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@95105 0039d316-1c4b-4281-b951-d872f2087c98
-rw-r--r--chrome/browser/content_settings/content_settings_pattern.cc5
-rw-r--r--chrome/browser/content_settings/content_settings_pattern.h3
-rw-r--r--chrome/browser/content_settings/content_settings_pattern_unittest.cc16
3 files changed, 24 insertions, 0 deletions
diff --git a/chrome/browser/content_settings/content_settings_pattern.cc b/chrome/browser/content_settings/content_settings_pattern.cc
index abb4e66..1d7db36 100644
--- a/chrome/browser/content_settings/content_settings_pattern.cc
+++ b/chrome/browser/content_settings/content_settings_pattern.cc
@@ -473,6 +473,11 @@ bool ContentSettingsPattern::operator==(
return Compare(other) == IDENTITY;
}
+bool ContentSettingsPattern::operator!=(
+ const ContentSettingsPattern& other) const {
+ return !(*this == other);
+}
+
bool ContentSettingsPattern::operator<(
const ContentSettingsPattern& other) const {
return Compare(other) < 0;
diff --git a/chrome/browser/content_settings/content_settings_pattern.h b/chrome/browser/content_settings/content_settings_pattern.h
index 7f8d7cf..232b96b 100644
--- a/chrome/browser/content_settings/content_settings_pattern.h
+++ b/chrome/browser/content_settings/content_settings_pattern.h
@@ -136,6 +136,9 @@ class ContentSettingsPattern {
// Returns true if the pattern and the |other| pattern are identical.
bool operator==(const ContentSettingsPattern& other) const;
+ // Returns true if the pattern and the |other| pattern are not identical.
+ bool operator!=(const ContentSettingsPattern& other) const;
+
// Returns true if the pattern has a lower priority than the |other| pattern.
bool operator<(const ContentSettingsPattern& other) const;
diff --git a/chrome/browser/content_settings/content_settings_pattern_unittest.cc b/chrome/browser/content_settings/content_settings_pattern_unittest.cc
index 87398aa..cb61a61 100644
--- a/chrome/browser/content_settings/content_settings_pattern_unittest.cc
+++ b/chrome/browser/content_settings/content_settings_pattern_unittest.cc
@@ -361,6 +361,22 @@ TEST(ContentSettingsPatternTest, InvalidPatterns) {
EXPECT_STREQ("", Pattern("file:///foo/bar.html:8080").ToString().c_str());
}
+TEST(ContentSettingsPatternTest, UnequalOperator) {
+ EXPECT_TRUE(Pattern("http://www.foo.com") != Pattern("http://www.foo.com*"));
+ EXPECT_TRUE(Pattern("http://www.foo.com*") !=
+ ContentSettingsPattern::Wildcard());
+
+ EXPECT_TRUE(Pattern("http://www.foo.com") !=
+ ContentSettingsPattern::Wildcard());
+
+ EXPECT_TRUE(Pattern("http://www.foo.com") != Pattern("www.foo.com"));
+ EXPECT_TRUE(Pattern("http://www.foo.com") !=
+ Pattern("http://www.foo.com:80"));
+
+ EXPECT_FALSE(Pattern("http://www.foo.com") != Pattern("http://www.foo.com"));
+ EXPECT_TRUE(Pattern("http://www.foo.com") == Pattern("http://www.foo.com"));
+}
+
TEST(ContentSettingsPatternTest, Compare) {
// Test identical patterns patterns.
ContentSettingsPattern pattern1 =