|
22 | 22 | import org.junit.jupiter.api.Test; |
23 | 23 | import org.junit.jupiter.api.function.Executable; |
24 | 24 |
|
25 | | -import java.util.Arrays; |
| 25 | +import java.util.Collections; |
26 | 26 | import java.util.Iterator; |
27 | 27 | import java.util.List; |
28 | 28 | import java.util.Set; |
|
41 | 41 |
|
42 | 42 | public class DefaultHttpHeadersTest { |
43 | 43 | private static final CharSequence HEADER_NAME = "testHeader"; |
| 44 | + private static final CharSequence ILLEGAL_VALUE = "testHeader\r\nContent-Length:45\r\n\r\n"; |
44 | 45 |
|
45 | 46 | @Test |
46 | 47 | public void nullHeaderNameNotAllowed() { |
@@ -234,6 +235,28 @@ public void setObjectIterable() { |
234 | 235 | assertDefaultValues(headers, HeaderValue.THREE); |
235 | 236 | } |
236 | 237 |
|
| 238 | + @Test |
| 239 | + public void setCharSequenceValidatesValue() { |
| 240 | + final DefaultHttpHeaders headers = newDefaultDefaultHttpHeaders(); |
| 241 | + assertThrows(IllegalArgumentException.class, new Executable() { |
| 242 | + @Override |
| 243 | + public void execute() throws Throwable { |
| 244 | + headers.set(HEADER_NAME, ILLEGAL_VALUE); |
| 245 | + } |
| 246 | + }); |
| 247 | + } |
| 248 | + |
| 249 | + @Test |
| 250 | + public void setIterableValidatesValue() { |
| 251 | + final DefaultHttpHeaders headers = newDefaultDefaultHttpHeaders(); |
| 252 | + assertThrows(IllegalArgumentException.class, new Executable() { |
| 253 | + @Override |
| 254 | + public void execute() throws Throwable { |
| 255 | + headers.set(HEADER_NAME, Collections.singleton(ILLEGAL_VALUE)); |
| 256 | + } |
| 257 | + }); |
| 258 | + } |
| 259 | + |
237 | 260 | @Test |
238 | 261 | public void toStringOnEmptyHeaders() { |
239 | 262 | assertEquals("DefaultHttpHeaders[]", newDefaultDefaultHttpHeaders().toString()); |
|
0 commit comments