| OLD | NEW |
| 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 1270 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1281 EXPECT_TRUE(parser.valid()); | 1281 EXPECT_TRUE(parser.valid()); |
| 1282 | 1282 |
| 1283 ASSERT_NO_FATAL_FAILURE( | 1283 ASSERT_NO_FATAL_FAILURE( |
| 1284 CheckNextNameValuePair(&parser, true, true, "foo", "bar")); | 1284 CheckNextNameValuePair(&parser, true, true, "foo", "bar")); |
| 1285 ASSERT_NO_FATAL_FAILURE( | 1285 ASSERT_NO_FATAL_FAILURE( |
| 1286 CheckNextNameValuePair(&parser, true, true, "name", "'value")); | 1286 CheckNextNameValuePair(&parser, true, true, "name", "'value")); |
| 1287 ASSERT_NO_FATAL_FAILURE( | 1287 ASSERT_NO_FATAL_FAILURE( |
| 1288 CheckNextNameValuePair(&parser, true, true, "ok", "it'")); | 1288 CheckNextNameValuePair(&parser, true, true, "ok", "it'")); |
| 1289 } | 1289 } |
| 1290 | 1290 |
| 1291 TEST(HttpUtilTest, IsValidHeaderValueRFC7230) { | |
| 1292 EXPECT_TRUE(HttpUtil::IsValidHeaderValueRFC7230("")); | |
| 1293 | |
| 1294 EXPECT_FALSE(HttpUtil::IsValidHeaderValueRFC7230(" ")); | |
| 1295 EXPECT_FALSE(HttpUtil::IsValidHeaderValueRFC7230(" q")); | |
| 1296 EXPECT_FALSE(HttpUtil::IsValidHeaderValueRFC7230("q ")); | |
| 1297 EXPECT_FALSE(HttpUtil::IsValidHeaderValueRFC7230("\t")); | |
| 1298 EXPECT_FALSE(HttpUtil::IsValidHeaderValueRFC7230("\tq")); | |
| 1299 EXPECT_FALSE(HttpUtil::IsValidHeaderValueRFC7230("q\t")); | |
| 1300 | |
| 1301 EXPECT_TRUE(HttpUtil::IsValidHeaderValueRFC7230("q q")); | |
| 1302 EXPECT_TRUE(HttpUtil::IsValidHeaderValueRFC7230("q\tq")); | |
| 1303 | |
| 1304 EXPECT_FALSE(HttpUtil::IsValidHeaderValueRFC7230(std::string("\0", 1))); | |
| 1305 EXPECT_FALSE(HttpUtil::IsValidHeaderValueRFC7230(std::string("q\0q", 3))); | |
| 1306 EXPECT_FALSE(HttpUtil::IsValidHeaderValueRFC7230("q\rq")); | |
| 1307 EXPECT_FALSE(HttpUtil::IsValidHeaderValueRFC7230("q\nq")); | |
| 1308 EXPECT_FALSE(HttpUtil::IsValidHeaderValueRFC7230("q\x01q")); | |
| 1309 EXPECT_FALSE(HttpUtil::IsValidHeaderValueRFC7230("q\x7fq")); | |
| 1310 | |
| 1311 EXPECT_TRUE(HttpUtil::IsValidHeaderValueRFC7230("q\x80q")); | |
| 1312 } | |
| 1313 | |
| 1314 TEST(HttpUtilTest, HasValidators) { | 1291 TEST(HttpUtilTest, HasValidators) { |
| 1315 const char* const kMissing = ""; | 1292 const char* const kMissing = ""; |
| 1316 const char* const kEtagEmpty = "\"\""; | 1293 const char* const kEtagEmpty = "\"\""; |
| 1317 const char* const kEtagStrong = "\"strong\""; | 1294 const char* const kEtagStrong = "\"strong\""; |
| 1318 const char* const kEtagWeak = "W/\"weak\""; | 1295 const char* const kEtagWeak = "W/\"weak\""; |
| 1319 const char* const kLastModified = "Tue, 15 Nov 1994 12:45:26 GMT"; | 1296 const char* const kLastModified = "Tue, 15 Nov 1994 12:45:26 GMT"; |
| 1320 const char* const kLastModifiedInvalid = "invalid"; | 1297 const char* const kLastModifiedInvalid = "invalid"; |
| 1321 | 1298 |
| 1322 const HttpVersion v0_9 = HttpVersion(0, 9); | 1299 const HttpVersion v0_9 = HttpVersion(0, 9); |
| 1323 EXPECT_FALSE(HttpUtil::HasValidators(v0_9, kMissing, kMissing)); | 1300 EXPECT_FALSE(HttpUtil::HasValidators(v0_9, kMissing, kMissing)); |
| (...skipping 40 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1364 EXPECT_TRUE(HttpUtil::HasValidators(v1_1, kEtagWeak, kLastModified)); | 1341 EXPECT_TRUE(HttpUtil::HasValidators(v1_1, kEtagWeak, kLastModified)); |
| 1365 EXPECT_TRUE(HttpUtil::HasValidators(v1_1, kEtagEmpty, kLastModified)); | 1342 EXPECT_TRUE(HttpUtil::HasValidators(v1_1, kEtagEmpty, kLastModified)); |
| 1366 | 1343 |
| 1367 EXPECT_FALSE(HttpUtil::HasValidators(v1_1, kMissing, kLastModifiedInvalid)); | 1344 EXPECT_FALSE(HttpUtil::HasValidators(v1_1, kMissing, kLastModifiedInvalid)); |
| 1368 EXPECT_TRUE(HttpUtil::HasValidators(v1_1, kEtagStrong, kLastModifiedInvalid)); | 1345 EXPECT_TRUE(HttpUtil::HasValidators(v1_1, kEtagStrong, kLastModifiedInvalid)); |
| 1369 EXPECT_TRUE(HttpUtil::HasValidators(v1_1, kEtagWeak, kLastModifiedInvalid)); | 1346 EXPECT_TRUE(HttpUtil::HasValidators(v1_1, kEtagWeak, kLastModifiedInvalid)); |
| 1370 EXPECT_TRUE(HttpUtil::HasValidators(v1_1, kEtagEmpty, kLastModifiedInvalid)); | 1347 EXPECT_TRUE(HttpUtil::HasValidators(v1_1, kEtagEmpty, kLastModifiedInvalid)); |
| 1371 } | 1348 } |
| 1372 | 1349 |
| 1373 } // namespace net | 1350 } // namespace net |
| OLD | NEW |