Chromium Code Reviews| Index: third_party/WebKit/Source/core/origin_trials/OriginTrialContextTest.cpp |
| diff --git a/third_party/WebKit/Source/core/origin_trials/OriginTrialContextTest.cpp b/third_party/WebKit/Source/core/origin_trials/OriginTrialContextTest.cpp |
| index 64a24a383e3502e068aad4d1f70c5e54788ed8be..36719367abf4cfba5435b235b0e94812a66b8d5f 100644 |
| --- a/third_party/WebKit/Source/core/origin_trials/OriginTrialContextTest.cpp |
| +++ b/third_party/WebKit/Source/core/origin_trials/OriginTrialContextTest.cpp |
| @@ -231,4 +231,40 @@ TEST_F(OriginTrialContextTest, EnabledNonSecureRegisteredOriginWithoutErrorMessa |
| EXPECT_EQ(0, tokenValidator()->callCount()); |
| } |
| +TEST_F(OriginTrialContextTest, ParseHeaderValue) |
| +{ |
| + OwnPtr<Vector<String>> tokens; |
| + ASSERT_TRUE(tokens = OriginTrialContext::parseHeaderValue(" foo\t ")); |
| + ASSERT_EQ(1u, tokens->size()); |
| + EXPECT_EQ("foo", (*tokens)[0]); |
| + |
| + ASSERT_TRUE(tokens = OriginTrialContext::parseHeaderValue(" \" bar \" ")); |
| + ASSERT_EQ(1u, tokens->size()); |
| + EXPECT_EQ(" bar ", (*tokens)[0]); |
| + |
| + ASSERT_TRUE(tokens = OriginTrialContext::parseHeaderValue(" foo, bar")); |
| + ASSERT_EQ(2u, tokens->size()); |
| + EXPECT_EQ("foo", (*tokens)[0]); |
| + EXPECT_EQ("bar", (*tokens)[1]); |
| + |
| + ASSERT_TRUE(tokens = OriginTrialContext::parseHeaderValue(" \"abc\" , 'def',g")); |
| + ASSERT_EQ(3u, tokens->size()); |
| + EXPECT_EQ("abc", (*tokens)[0]); |
| + EXPECT_EQ("def", (*tokens)[1]); |
| + EXPECT_EQ("g", (*tokens)[2]); |
| + |
| + ASSERT_TRUE(tokens = OriginTrialContext::parseHeaderValue(" \"a\\b\\\"c'd\", 'e\\f\\'g' ")); |
| + ASSERT_EQ(2u, tokens->size()); |
| + EXPECT_EQ("ab\"c'd", (*tokens)[0]); |
| + EXPECT_EQ("ef'g", (*tokens)[1]); |
|
chasej
2016/04/21 18:24:30
Add a test for a header with length > 0, but conta
chasej
2016/04/21 18:24:30
As far as I can tell from the implementation, pars
Marijn Kruisselbrink
2016/04/21 20:27:09
Done
On 2016/04/21 at 18:24:30, chasej wrote:
|
| +} |
| + |
| +TEST_F(OriginTrialContextTest, ParseHeaderValue_NotCommaSeparated) |
| +{ |
| + EXPECT_FALSE(OriginTrialContext::parseHeaderValue("foo bar")); |
| + EXPECT_FALSE(OriginTrialContext::parseHeaderValue("\"foo\" 'bar'")); |
| + EXPECT_FALSE(OriginTrialContext::parseHeaderValue("foo 'bar'")); |
| + EXPECT_FALSE(OriginTrialContext::parseHeaderValue("\"foo\" bar")); |
| +} |
| + |
| } // namespace blink |