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

Unified Diff: net/http/http_util_unittest.cc

Issue 1481143002: Added HttpUtils::HasValidators and HttpResponse::HasValidators (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Removed loops from the test cases Created 4 years, 10 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
« net/http/http_util.cc ('K') | « net/http/http_util.cc ('k') | no next file » | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: net/http/http_util_unittest.cc
diff --git a/net/http/http_util_unittest.cc b/net/http/http_util_unittest.cc
index e83f6b9916362a4a65391e39e2f1ee4594d380ac..276fef9d89fc00e1d5bac73939fa9a289b4000a8 100644
--- a/net/http/http_util_unittest.cc
+++ b/net/http/http_util_unittest.cc
@@ -1200,4 +1200,53 @@ TEST(HttpUtilTest, IsValidHeaderValueRFC7230) {
EXPECT_TRUE(HttpUtil::IsValidHeaderValueRFC7230("q\x80q"));
}
+TEST(HttpUtilTest, HasValidators) {
+ const char* const kEmpty = "";
+ const char* const kEtagStrong = "\"strong\"";
+ const char* const kEtagWeak = "W/\"weak\"";
+ const char* const kLastModified = "Tue, 15 Nov 1994 12:45:26 GMT";
+ const char* const kLastModifiedInvalid = "invalid";
+
+ const HttpVersion v0_9 = HttpVersion(0, 9);
+ EXPECT_FALSE(HttpUtil::HasValidators(v0_9, kEmpty, kEmpty));
+ EXPECT_FALSE(HttpUtil::HasValidators(v0_9, kEtagStrong, kEmpty));
+ EXPECT_FALSE(HttpUtil::HasValidators(v0_9, kEtagWeak, kEmpty));
+
+ EXPECT_FALSE(HttpUtil::HasValidators(v0_9, kEmpty, kLastModified));
+ EXPECT_FALSE(HttpUtil::HasValidators(v0_9, kEtagStrong, kLastModified));
+ EXPECT_FALSE(HttpUtil::HasValidators(v0_9, kEtagWeak, kLastModified));
+
+ EXPECT_FALSE(HttpUtil::HasValidators(v0_9, kEmpty, kLastModifiedInvalid));
+ EXPECT_FALSE(
+ HttpUtil::HasValidators(v0_9, kEtagStrong, kLastModifiedInvalid));
+ EXPECT_FALSE(HttpUtil::HasValidators(v0_9, kEtagWeak, kLastModifiedInvalid));
+
+ const HttpVersion v1_0 = HttpVersion(1, 0);
+ EXPECT_FALSE(HttpUtil::HasValidators(v1_0, kEmpty, kEmpty));
gavinp 2016/02/25 18:56:20 Is an empty ETag the same as a not-present ETag fo
jamartin 2016/02/26 14:47:50 Good question. This is a tricky one that took me s
+ EXPECT_FALSE(HttpUtil::HasValidators(v1_0, kEtagStrong, kEmpty));
+ EXPECT_FALSE(HttpUtil::HasValidators(v1_0, kEtagWeak, kEmpty));
+
+ EXPECT_TRUE(HttpUtil::HasValidators(v1_0, kEmpty, kLastModified));
+ EXPECT_TRUE(HttpUtil::HasValidators(v1_0, kEtagStrong, kLastModified));
+ EXPECT_TRUE(HttpUtil::HasValidators(v1_0, kEtagWeak, kLastModified));
+
+ EXPECT_FALSE(HttpUtil::HasValidators(v1_0, kEmpty, kLastModifiedInvalid));
+ EXPECT_FALSE(
+ HttpUtil::HasValidators(v1_0, kEtagStrong, kLastModifiedInvalid));
+ EXPECT_FALSE(HttpUtil::HasValidators(v1_0, kEtagWeak, kLastModifiedInvalid));
+
+ const HttpVersion v1_1 = HttpVersion(1, 1);
+ EXPECT_FALSE(HttpUtil::HasValidators(v1_1, kEmpty, kEmpty));
+ EXPECT_TRUE(HttpUtil::HasValidators(v1_1, kEtagStrong, kEmpty));
+ EXPECT_TRUE(HttpUtil::HasValidators(v1_1, kEtagWeak, kEmpty));
+
+ EXPECT_TRUE(HttpUtil::HasValidators(v1_1, kEmpty, kLastModified));
+ EXPECT_TRUE(HttpUtil::HasValidators(v1_1, kEtagStrong, kLastModified));
+ EXPECT_TRUE(HttpUtil::HasValidators(v1_1, kEtagWeak, kLastModified));
+
+ EXPECT_FALSE(HttpUtil::HasValidators(v1_1, kEmpty, kLastModifiedInvalid));
+ EXPECT_TRUE(HttpUtil::HasValidators(v1_1, kEtagStrong, kLastModifiedInvalid));
+ EXPECT_TRUE(HttpUtil::HasValidators(v1_1, kEtagWeak, kLastModifiedInvalid));
+}
+
} // namespace net
« net/http/http_util.cc ('K') | « net/http/http_util.cc ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698