OLD | NEW |
1 // Copyright (c) 2010 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2010 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 "net/http/http_request_headers.h" | 5 #include "net/http/http_request_headers.h" |
6 | 6 |
7 #include "testing/gtest/include/gtest/gtest.h" | 7 #include "testing/gtest/include/gtest/gtest.h" |
8 | 8 |
9 namespace net { | 9 namespace net { |
10 | 10 |
(...skipping 49 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
60 EXPECT_EQ("FooBar: smokes\r\nFoo: crack\r\n\r\n", headers_ref.ToString()); | 60 EXPECT_EQ("FooBar: smokes\r\nFoo: crack\r\n\r\n", headers_ref.ToString()); |
61 } | 61 } |
62 | 62 |
63 TEST(HttpRequestHeaders, SetEmptyHeader) { | 63 TEST(HttpRequestHeaders, SetEmptyHeader) { |
64 HttpRequestHeaders headers; | 64 HttpRequestHeaders headers; |
65 headers.SetHeader("Foo", "Bar"); | 65 headers.SetHeader("Foo", "Bar"); |
66 headers.SetHeader("Bar", ""); | 66 headers.SetHeader("Bar", ""); |
67 EXPECT_EQ("Foo: Bar\r\nBar:\r\n\r\n", headers.ToString()); | 67 EXPECT_EQ("Foo: Bar\r\nBar:\r\n\r\n", headers.ToString()); |
68 } | 68 } |
69 | 69 |
| 70 TEST(HttpRequestHeaders, SetHeaderIfMissing) { |
| 71 HttpRequestHeaders headers; |
| 72 headers.SetHeaderIfMissing("Foo", "Bar"); |
| 73 EXPECT_EQ("Foo: Bar\r\n\r\n", headers.ToString()); |
| 74 headers.SetHeaderIfMissing("Foo", "Baz"); |
| 75 EXPECT_EQ("Foo: Bar\r\n\r\n", headers.ToString()); |
| 76 } |
| 77 |
70 TEST(HttpRequestHeaders, RemoveHeader) { | 78 TEST(HttpRequestHeaders, RemoveHeader) { |
71 HttpRequestHeaders headers; | 79 HttpRequestHeaders headers; |
72 headers.SetHeader("Foo", "bar"); | 80 headers.SetHeader("Foo", "bar"); |
73 headers.RemoveHeader("Foo"); | 81 headers.RemoveHeader("Foo"); |
74 EXPECT_EQ("\r\n", headers.ToString()); | 82 EXPECT_EQ("\r\n", headers.ToString()); |
75 } | 83 } |
76 | 84 |
77 TEST(HttpRequestHeaders, RemoveHeaderMissingHeader) { | 85 TEST(HttpRequestHeaders, RemoveHeaderMissingHeader) { |
78 HttpRequestHeaders headers; | 86 HttpRequestHeaders headers; |
79 headers.SetHeader("Foo", "bar"); | 87 headers.SetHeader("Foo", "bar"); |
(...skipping 71 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
151 HttpRequestHeaders headers2; | 159 HttpRequestHeaders headers2; |
152 headers2.SetHeader("B", "b"); | 160 headers2.SetHeader("B", "b"); |
153 headers2.SetHeader("C", "c"); | 161 headers2.SetHeader("C", "c"); |
154 headers.CopyFrom(headers2); | 162 headers.CopyFrom(headers2); |
155 EXPECT_EQ("B: b\r\nC: c\r\n\r\n", headers.ToString()); | 163 EXPECT_EQ("B: b\r\nC: c\r\n\r\n", headers.ToString()); |
156 } | 164 } |
157 | 165 |
158 } // namespace | 166 } // namespace |
159 | 167 |
160 } // namespace net | 168 } // namespace net |
OLD | NEW |