OLD | NEW |
1 // Copyright 2014 The Chromium Authors. All rights reserved. | 1 // Copyright 2014 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 "config.h" | 5 #include "config.h" |
6 #include "HTTPParsers.h" | 6 #include "HTTPParsers.h" |
7 | 7 |
8 #include "wtf/MathExtras.h" | 8 #include "wtf/MathExtras.h" |
9 #include "wtf/text/AtomicString.h" | 9 #include "wtf/text/AtomicString.h" |
10 | 10 |
(...skipping 221 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
232 EXPECT_TRUE(set1.contains("whatever")); | 232 EXPECT_TRUE(set1.contains("whatever")); |
233 parseCommaDelimitedHeader("dprw\t , fo\to", set2); | 233 parseCommaDelimitedHeader("dprw\t , fo\to", set2); |
234 EXPECT_FALSE(set2.contains("dpr")); | 234 EXPECT_FALSE(set2.contains("dpr")); |
235 EXPECT_FALSE(set2.contains("rw")); | 235 EXPECT_FALSE(set2.contains("rw")); |
236 EXPECT_FALSE(set2.contains("whatever")); | 236 EXPECT_FALSE(set2.contains("whatever")); |
237 EXPECT_TRUE(set2.contains("dprw")); | 237 EXPECT_TRUE(set2.contains("dprw")); |
238 EXPECT_FALSE(set2.contains("foo")); | 238 EXPECT_FALSE(set2.contains("foo")); |
239 EXPECT_TRUE(set2.contains("fo\to")); | 239 EXPECT_TRUE(set2.contains("fo\to")); |
240 } | 240 } |
241 | 241 |
| 242 TEST(HTTPParsersTest, HTTPFieldContent) |
| 243 { |
| 244 const UChar hiraganaA[2] = { 0x3042, 0 }; |
| 245 |
| 246 EXPECT_TRUE(blink::isValidHTTPFieldContentRFC7230("\xd0\xa1")); |
| 247 EXPECT_TRUE(blink::isValidHTTPFieldContentRFC7230("t t")); |
| 248 EXPECT_TRUE(blink::isValidHTTPFieldContentRFC7230("t\tt")); |
| 249 EXPECT_FALSE(blink::isValidHTTPFieldContentRFC7230(" ")); |
| 250 EXPECT_FALSE(blink::isValidHTTPFieldContentRFC7230("")); |
| 251 EXPECT_FALSE(blink::isValidHTTPFieldContentRFC7230("\x7f")); |
| 252 EXPECT_FALSE(blink::isValidHTTPFieldContentRFC7230("t\rt")); |
| 253 EXPECT_FALSE(blink::isValidHTTPFieldContentRFC7230("t\nt")); |
| 254 EXPECT_FALSE(blink::isValidHTTPFieldContentRFC7230("t\bt")); |
| 255 EXPECT_FALSE(blink::isValidHTTPFieldContentRFC7230("t\vt")); |
| 256 EXPECT_FALSE(blink::isValidHTTPFieldContentRFC7230(" t")); |
| 257 EXPECT_FALSE(blink::isValidHTTPFieldContentRFC7230("t ")); |
| 258 EXPECT_FALSE(blink::isValidHTTPFieldContentRFC7230(String("t\0t", 3))); |
| 259 EXPECT_FALSE(blink::isValidHTTPFieldContentRFC7230(String("\0", 1))); |
| 260 EXPECT_FALSE(blink::isValidHTTPFieldContentRFC7230(String("test \0, 6"))); |
| 261 EXPECT_FALSE(blink::isValidHTTPFieldContentRFC7230(String("test "))); |
| 262 EXPECT_FALSE(blink::isValidHTTPFieldContentRFC7230("test\r\n data")); |
| 263 EXPECT_FALSE(blink::isValidHTTPFieldContentRFC7230(String(hiraganaA))); |
| 264 } |
| 265 |
242 } // namespace blink | 266 } // namespace blink |
243 | 267 |
OLD | NEW |