File tree Expand file tree Collapse file tree 2 files changed +28
-1
lines changed
main/java/org/springframework/security/web
test/java/org/springframework/security/web Expand file tree Collapse file tree 2 files changed +28
-1
lines changed Original file line number Diff line number Diff line change 26
26
import java .util .Collections ;
27
27
import java .util .Enumeration ;
28
28
import java .util .LinkedHashMap ;
29
+ import java .util .List ;
29
30
import java .util .Map ;
30
31
31
32
import javax .servlet .FilterChain ;
@@ -257,7 +258,11 @@ public String getHeader(String name) {
257
258
258
259
@ Override
259
260
public Enumeration <String > getHeaders (String name ) {
260
- return Collections .enumeration (this .headers .get (name ));
261
+ List <String > headerList = this .headers .get (name );
262
+ if (headerList == null ) {
263
+ return Collections .emptyEnumeration ();
264
+ }
265
+ return Collections .enumeration (headerList );
261
266
}
262
267
263
268
@ Override
Original file line number Diff line number Diff line change 16
16
17
17
package org .springframework .security .web ;
18
18
19
+ import java .util .Enumeration ;
20
+ import java .util .NoSuchElementException ;
21
+
19
22
import javax .servlet .FilterChain ;
20
23
import javax .servlet .http .HttpServletRequest ;
21
24
import javax .servlet .http .HttpServletResponse ;
@@ -142,4 +145,23 @@ public void constructorWhenServletContextProvidedThenSetServletContextInRequest(
142
145
assertThat (filterInvocation .getRequest ().getServletContext ()).isSameAs (mockServletContext );
143
146
}
144
147
148
+ @ Test
149
+ public void testDummyRequestGetHeaders () {
150
+ DummyRequest request = new DummyRequest ();
151
+ request .addHeader ("known" , "val" );
152
+ Enumeration <String > headers = request .getHeaders ("known" );
153
+ assertThat (headers .hasMoreElements ()).isTrue ();
154
+ assertThat (headers .nextElement ()).isEqualTo ("val" );
155
+ assertThat (headers .hasMoreElements ()).isFalse ();
156
+ assertThatExceptionOfType (NoSuchElementException .class ).isThrownBy (headers ::nextElement );
157
+ }
158
+
159
+ @ Test
160
+ public void testDummyRequestGetHeadersNull () {
161
+ DummyRequest request = new DummyRequest ();
162
+ Enumeration <String > headers = request .getHeaders ("unknown" );
163
+ assertThat (headers .hasMoreElements ()).isFalse ();
164
+ assertThatExceptionOfType (NoSuchElementException .class ).isThrownBy (headers ::nextElement );
165
+ }
166
+
145
167
}
You can’t perform that action at this time.
0 commit comments