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

Unified Diff: chrome/browser/extensions/api/declarative_webrequest/webrequest_condition_attribute_unittest.cc

Issue 10923002: Extracting header testing code from WebRequestConditionAttributeResponseHeaders. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Correction of a negated condition and more unit-tests Created 8 years, 3 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/extensions/api/declarative_webrequest/webrequest_condition_attribute.cc ('k') | no next file » | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: chrome/browser/extensions/api/declarative_webrequest/webrequest_condition_attribute_unittest.cc
diff --git a/chrome/browser/extensions/api/declarative_webrequest/webrequest_condition_attribute_unittest.cc b/chrome/browser/extensions/api/declarative_webrequest/webrequest_condition_attribute_unittest.cc
index d0c79b1bd61725d78a7d388f6fe842cc30c71ff0..1f3e26b9a69ebc19eba57c99cfd07ea57a7f1515 100644
--- a/chrome/browser/extensions/api/declarative_webrequest/webrequest_condition_attribute_unittest.cc
+++ b/chrome/browser/extensions/api/declarative_webrequest/webrequest_condition_attribute_unittest.cc
@@ -376,16 +376,34 @@ TEST(WebRequestConditionAttributeTest, Headers) {
MatchAndCheck(tests, keys::kResponseHeadersKey, &url_request, &result);
EXPECT_TRUE(result);
- // 1.h. -- Values are case-sensitive, this should fail
+ // 1.h. -- Values are case-sensitive, this should fail.
const std::string kLowercase[] = {
keys::kNameEqualsKey, "Custom-header-b",
- keys::kValueEqualsKey, "valuea" // valuea != valueA
+ keys::kValuePrefixKey, "valueb", // valueb != valueB
+ keys::kNameEqualsKey, "Custom-header-b",
+ keys::kValueSuffixKey, "valueb",
+ keys::kNameEqualsKey, "Custom-header-b",
+ keys::kValueContainsKey, "valueb",
+ keys::kNameEqualsKey, "Custom-header-b",
+ keys::kValueEqualsKey, "valueb"
};
- const size_t kLowercaseSizes[] = { arraysize(kLowercase) };
- GetArrayAsVector(kLowercase, kLowercaseSizes, 1u, &tests);
+ const size_t kLowercaseSizes[] = { 4u, 4u, 4u, 4u }; // As disjunction.
+ GetArrayAsVector(kLowercase, kLowercaseSizes, 4u, &tests);
MatchAndCheck(tests, keys::kResponseHeadersKey, &url_request, &result);
EXPECT_FALSE(result);
+ // 1.i. -- Names are case-insensitive, this should pass.
+ const std::string kUppercase[] = {
+ keys::kNamePrefixKey, "CUSTOM-HEADER-B",
+ keys::kNameSuffixKey, "CUSTOM-HEADER-B",
+ keys::kNameEqualsKey, "CUSTOM-HEADER-B",
+ keys::kNameContainsKey, "CUSTOM-HEADER-B"
+ };
+ const size_t kUppercaseSizes[] = { arraysize(kUppercase) }; // Conjunction.
+ GetArrayAsVector(kUppercase, kUppercaseSizes, 1u, &tests);
+ MatchAndCheck(tests, keys::kResponseHeadersKey, &url_request, &result);
+ EXPECT_TRUE(result);
+
// 2.a. -- This should pass as disjunction, because one of the tests passes.
const std::string kDisjunction[] = {
keys::kNamePrefixKey, "Non-existing", // This one fails.
« no previous file with comments | « chrome/browser/extensions/api/declarative_webrequest/webrequest_condition_attribute.cc ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698