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

Side by Side 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: Clarified the documentation Created 4 years, 9 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 unified diff | Download patch
« no previous file with comments | « net/http/http_util.cc ('k') | no next file » | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include <algorithm> 5 #include <algorithm>
6 6
7 #include "base/strings/string_util.h" 7 #include "base/strings/string_util.h"
8 #include "net/http/http_util.h" 8 #include "net/http/http_util.h"
9 #include "testing/gtest/include/gtest/gtest.h" 9 #include "testing/gtest/include/gtest/gtest.h"
10 10
(...skipping 1182 matching lines...) Expand 10 before | Expand all | Expand 10 after
1193 EXPECT_FALSE(HttpUtil::IsValidHeaderValueRFC7230(std::string("\0", 1))); 1193 EXPECT_FALSE(HttpUtil::IsValidHeaderValueRFC7230(std::string("\0", 1)));
1194 EXPECT_FALSE(HttpUtil::IsValidHeaderValueRFC7230(std::string("q\0q", 3))); 1194 EXPECT_FALSE(HttpUtil::IsValidHeaderValueRFC7230(std::string("q\0q", 3)));
1195 EXPECT_FALSE(HttpUtil::IsValidHeaderValueRFC7230("q\rq")); 1195 EXPECT_FALSE(HttpUtil::IsValidHeaderValueRFC7230("q\rq"));
1196 EXPECT_FALSE(HttpUtil::IsValidHeaderValueRFC7230("q\nq")); 1196 EXPECT_FALSE(HttpUtil::IsValidHeaderValueRFC7230("q\nq"));
1197 EXPECT_FALSE(HttpUtil::IsValidHeaderValueRFC7230("q\x01q")); 1197 EXPECT_FALSE(HttpUtil::IsValidHeaderValueRFC7230("q\x01q"));
1198 EXPECT_FALSE(HttpUtil::IsValidHeaderValueRFC7230("q\x7fq")); 1198 EXPECT_FALSE(HttpUtil::IsValidHeaderValueRFC7230("q\x7fq"));
1199 1199
1200 EXPECT_TRUE(HttpUtil::IsValidHeaderValueRFC7230("q\x80q")); 1200 EXPECT_TRUE(HttpUtil::IsValidHeaderValueRFC7230("q\x80q"));
1201 } 1201 }
1202 1202
1203 TEST(HttpUtilTest, HasValidators) {
1204 const char* const kMissing = "";
1205 const char* const kEtagEmpty = "\"\"";
1206 const char* const kEtagStrong = "\"strong\"";
1207 const char* const kEtagWeak = "W/\"weak\"";
1208 const char* const kLastModified = "Tue, 15 Nov 1994 12:45:26 GMT";
1209 const char* const kLastModifiedInvalid = "invalid";
1210
1211 const HttpVersion v0_9 = HttpVersion(0, 9);
1212 EXPECT_FALSE(HttpUtil::HasValidators(v0_9, kMissing, kMissing));
1213 EXPECT_FALSE(HttpUtil::HasValidators(v0_9, kEtagStrong, kMissing));
1214 EXPECT_FALSE(HttpUtil::HasValidators(v0_9, kEtagWeak, kMissing));
1215 EXPECT_FALSE(HttpUtil::HasValidators(v0_9, kEtagEmpty, kMissing));
1216
1217 EXPECT_FALSE(HttpUtil::HasValidators(v0_9, kMissing, kLastModified));
1218 EXPECT_FALSE(HttpUtil::HasValidators(v0_9, kEtagStrong, kLastModified));
1219 EXPECT_FALSE(HttpUtil::HasValidators(v0_9, kEtagWeak, kLastModified));
1220 EXPECT_FALSE(HttpUtil::HasValidators(v0_9, kEtagEmpty, kLastModified));
1221
1222 EXPECT_FALSE(HttpUtil::HasValidators(v0_9, kMissing, kLastModifiedInvalid));
1223 EXPECT_FALSE(
1224 HttpUtil::HasValidators(v0_9, kEtagStrong, kLastModifiedInvalid));
1225 EXPECT_FALSE(HttpUtil::HasValidators(v0_9, kEtagWeak, kLastModifiedInvalid));
1226 EXPECT_FALSE(HttpUtil::HasValidators(v0_9, kEtagEmpty, kLastModifiedInvalid));
1227
1228 const HttpVersion v1_0 = HttpVersion(1, 0);
1229 EXPECT_FALSE(HttpUtil::HasValidators(v1_0, kMissing, kMissing));
1230 EXPECT_FALSE(HttpUtil::HasValidators(v1_0, kEtagStrong, kMissing));
1231 EXPECT_FALSE(HttpUtil::HasValidators(v1_0, kEtagWeak, kMissing));
1232 EXPECT_FALSE(HttpUtil::HasValidators(v1_0, kEtagEmpty, kMissing));
1233
1234 EXPECT_TRUE(HttpUtil::HasValidators(v1_0, kMissing, kLastModified));
1235 EXPECT_TRUE(HttpUtil::HasValidators(v1_0, kEtagStrong, kLastModified));
1236 EXPECT_TRUE(HttpUtil::HasValidators(v1_0, kEtagWeak, kLastModified));
1237 EXPECT_TRUE(HttpUtil::HasValidators(v1_0, kEtagEmpty, kLastModified));
1238
1239 EXPECT_FALSE(HttpUtil::HasValidators(v1_0, kMissing, kLastModifiedInvalid));
1240 EXPECT_FALSE(
1241 HttpUtil::HasValidators(v1_0, kEtagStrong, kLastModifiedInvalid));
1242 EXPECT_FALSE(HttpUtil::HasValidators(v1_0, kEtagWeak, kLastModifiedInvalid));
1243 EXPECT_FALSE(HttpUtil::HasValidators(v1_0, kEtagEmpty, kLastModifiedInvalid));
1244
1245 const HttpVersion v1_1 = HttpVersion(1, 1);
1246 EXPECT_FALSE(HttpUtil::HasValidators(v1_1, kMissing, kMissing));
1247 EXPECT_TRUE(HttpUtil::HasValidators(v1_1, kEtagStrong, kMissing));
1248 EXPECT_TRUE(HttpUtil::HasValidators(v1_1, kEtagWeak, kMissing));
1249 EXPECT_TRUE(HttpUtil::HasValidators(v1_1, kEtagEmpty, kMissing));
1250
1251 EXPECT_TRUE(HttpUtil::HasValidators(v1_1, kMissing, kLastModified));
1252 EXPECT_TRUE(HttpUtil::HasValidators(v1_1, kEtagStrong, kLastModified));
1253 EXPECT_TRUE(HttpUtil::HasValidators(v1_1, kEtagWeak, kLastModified));
1254 EXPECT_TRUE(HttpUtil::HasValidators(v1_1, kEtagEmpty, kLastModified));
1255
1256 EXPECT_FALSE(HttpUtil::HasValidators(v1_1, kMissing, kLastModifiedInvalid));
1257 EXPECT_TRUE(HttpUtil::HasValidators(v1_1, kEtagStrong, kLastModifiedInvalid));
1258 EXPECT_TRUE(HttpUtil::HasValidators(v1_1, kEtagWeak, kLastModifiedInvalid));
1259 EXPECT_TRUE(HttpUtil::HasValidators(v1_1, kEtagEmpty, kLastModifiedInvalid));
1260 }
1261
1203 } // namespace net 1262 } // namespace net
OLDNEW
« no previous file with comments | « net/http/http_util.cc ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698