1
1
/*
2
- * Copyright 2002-2019 the original author or authors.
2
+ * Copyright 2002-2020 the original author or authors.
3
3
*
4
4
* Licensed under the Apache License, Version 2.0 (the "License");
5
5
* you may not use this file except in compliance with the License.
16
16
17
17
package org .springframework .web .filter ;
18
18
19
+ import java .nio .charset .StandardCharsets ;
20
+
19
21
import javax .servlet .FilterChain ;
20
22
import javax .servlet .http .HttpServletResponse ;
21
23
@@ -62,7 +64,7 @@ public void filterNoMatch() throws Exception {
62
64
final MockHttpServletRequest request = new MockHttpServletRequest ("GET" , "/hotels" );
63
65
MockHttpServletResponse response = new MockHttpServletResponse ();
64
66
65
- final byte [] responseBody = "Hello World" .getBytes ("UTF-8" );
67
+ final byte [] responseBody = "Hello World" .getBytes (StandardCharsets . UTF_8 );
66
68
FilterChain filterChain = (filterRequest , filterResponse ) -> {
67
69
assertThat (filterRequest ).as ("Invalid request passed" ).isEqualTo (request );
68
70
((HttpServletResponse ) filterResponse ).setStatus (HttpServletResponse .SC_OK );
@@ -71,7 +73,7 @@ public void filterNoMatch() throws Exception {
71
73
filter .doFilter (request , response , filterChain );
72
74
73
75
assertThat (response .getStatus ()).as ("Invalid status" ).isEqualTo (200 );
74
- assertThat (response .getHeader ("ETag" )).as ("Invalid ETag header " ).isEqualTo ("\" 0b10a8db164e0754105b7a99be72e3fe5\" " );
76
+ assertThat (response .getHeader ("ETag" )).as ("Invalid ETag" ).isEqualTo ("\" 0b10a8db164e0754105b7a99be72e3fe5\" " );
75
77
assertThat (response .getContentLength () > 0 ).as ("Invalid Content-Length header" ).isTrue ();
76
78
assertThat (response .getContentAsByteArray ()).as ("Invalid content" ).isEqualTo (responseBody );
77
79
}
@@ -82,7 +84,7 @@ public void filterNoMatchWeakETag() throws Exception {
82
84
final MockHttpServletRequest request = new MockHttpServletRequest ("GET" , "/hotels" );
83
85
MockHttpServletResponse response = new MockHttpServletResponse ();
84
86
85
- final byte [] responseBody = "Hello World" .getBytes ("UTF-8" );
87
+ final byte [] responseBody = "Hello World" .getBytes (StandardCharsets . UTF_8 );
86
88
FilterChain filterChain = (filterRequest , filterResponse ) -> {
87
89
assertThat (filterRequest ).as ("Invalid request passed" ).isEqualTo (request );
88
90
((HttpServletResponse ) filterResponse ).setStatus (HttpServletResponse .SC_OK );
@@ -91,7 +93,7 @@ public void filterNoMatchWeakETag() throws Exception {
91
93
filter .doFilter (request , response , filterChain );
92
94
93
95
assertThat (response .getStatus ()).as ("Invalid status" ).isEqualTo (200 );
94
- assertThat (response .getHeader ("ETag" )).as ("Invalid ETag header " ).isEqualTo ("W/\" 0b10a8db164e0754105b7a99be72e3fe5\" " );
96
+ assertThat (response .getHeader ("ETag" )).as ("Invalid ETag" ).isEqualTo ("W/\" 0b10a8db164e0754105b7a99be72e3fe5\" " );
95
97
assertThat (response .getContentLength () > 0 ).as ("Invalid Content-Length header" ).isTrue ();
96
98
assertThat (response .getContentAsByteArray ()).as ("Invalid content" ).isEqualTo (responseBody );
97
99
}
@@ -105,14 +107,14 @@ public void filterMatch() throws Exception {
105
107
106
108
FilterChain filterChain = (filterRequest , filterResponse ) -> {
107
109
assertThat (filterRequest ).as ("Invalid request passed" ).isEqualTo (request );
108
- byte [] responseBody = "Hello World" .getBytes ("UTF-8" );
110
+ byte [] responseBody = "Hello World" .getBytes (StandardCharsets . UTF_8 );
109
111
FileCopyUtils .copy (responseBody , filterResponse .getOutputStream ());
110
112
filterResponse .setContentLength (responseBody .length );
111
113
};
112
114
filter .doFilter (request , response , filterChain );
113
115
114
116
assertThat (response .getStatus ()).as ("Invalid status" ).isEqualTo (304 );
115
- assertThat (response .getHeader ("ETag" )).as ("Invalid ETag header " ).isEqualTo ("\" 0b10a8db164e0754105b7a99be72e3fe5\" " );
117
+ assertThat (response .getHeader ("ETag" )).as ("Invalid ETag" ).isEqualTo ("\" 0b10a8db164e0754105b7a99be72e3fe5\" " );
116
118
assertThat (response .containsHeader ("Content-Length" )).as ("Response has Content-Length header" ).isFalse ();
117
119
byte [] expecteds = new byte [0 ];
118
120
assertThat (response .getContentAsByteArray ()).as ("Invalid content" ).isEqualTo (expecteds );
@@ -127,14 +129,14 @@ public void filterMatchWeakEtag() throws Exception {
127
129
128
130
FilterChain filterChain = (filterRequest , filterResponse ) -> {
129
131
assertThat (filterRequest ).as ("Invalid request passed" ).isEqualTo (request );
130
- byte [] responseBody = "Hello World" .getBytes ("UTF-8" );
132
+ byte [] responseBody = "Hello World" .getBytes (StandardCharsets . UTF_8 );
131
133
FileCopyUtils .copy (responseBody , filterResponse .getOutputStream ());
132
134
filterResponse .setContentLength (responseBody .length );
133
135
};
134
136
filter .doFilter (request , response , filterChain );
135
137
136
138
assertThat (response .getStatus ()).as ("Invalid status" ).isEqualTo (304 );
137
- assertThat (response .getHeader ("ETag" )).as ("Invalid ETag header " ).isEqualTo ("\" 0b10a8db164e0754105b7a99be72e3fe5\" " );
139
+ assertThat (response .getHeader ("ETag" )).as ("Invalid ETag" ).isEqualTo ("\" 0b10a8db164e0754105b7a99be72e3fe5\" " );
138
140
assertThat (response .containsHeader ("Content-Length" )).as ("Response has Content-Length header" ).isFalse ();
139
141
byte [] expecteds = new byte [0 ];
140
142
assertThat (response .getContentAsByteArray ()).as ("Invalid content" ).isEqualTo (expecteds );
@@ -156,7 +158,7 @@ public void filterWriter() throws Exception {
156
158
filter .doFilter (request , response , filterChain );
157
159
158
160
assertThat (response .getStatus ()).as ("Invalid status" ).isEqualTo (304 );
159
- assertThat (response .getHeader ("ETag" )).as ("Invalid ETag header " ).isEqualTo ("\" 0b10a8db164e0754105b7a99be72e3fe5\" " );
161
+ assertThat (response .getHeader ("ETag" )).as ("Invalid ETag" ).isEqualTo ("\" 0b10a8db164e0754105b7a99be72e3fe5\" " );
160
162
assertThat (response .containsHeader ("Content-Length" )).as ("Response has Content-Length header" ).isFalse ();
161
163
byte [] expecteds = new byte [0 ];
162
164
assertThat (response .getContentAsByteArray ()).as ("Invalid content" ).isEqualTo (expecteds );
@@ -167,7 +169,7 @@ public void filterWriterWithDisabledCaching() throws Exception {
167
169
final MockHttpServletRequest request = new MockHttpServletRequest ("GET" , "/hotels" );
168
170
MockHttpServletResponse response = new MockHttpServletResponse ();
169
171
170
- final byte [] responseBody = "Hello World" .getBytes ("UTF-8" );
172
+ final byte [] responseBody = "Hello World" .getBytes (StandardCharsets . UTF_8 );
171
173
FilterChain filterChain = (filterRequest , filterResponse ) -> {
172
174
assertThat (filterRequest ).as ("Invalid request passed" ).isEqualTo (request );
173
175
((HttpServletResponse ) filterResponse ).setStatus (HttpServletResponse .SC_OK );
@@ -187,7 +189,7 @@ public void filterSendError() throws Exception {
187
189
final MockHttpServletRequest request = new MockHttpServletRequest ("GET" , "/hotels" );
188
190
MockHttpServletResponse response = new MockHttpServletResponse ();
189
191
190
- final byte [] responseBody = "Hello World" .getBytes ("UTF-8" );
192
+ final byte [] responseBody = "Hello World" .getBytes (StandardCharsets . UTF_8 );
191
193
FilterChain filterChain = (filterRequest , filterResponse ) -> {
192
194
assertThat (filterRequest ).as ("Invalid request passed" ).isEqualTo (request );
193
195
response .setContentLength (100 );
@@ -197,7 +199,7 @@ public void filterSendError() throws Exception {
197
199
filter .doFilter (request , response , filterChain );
198
200
199
201
assertThat (response .getStatus ()).as ("Invalid status" ).isEqualTo (403 );
200
- assertThat (response .getHeader ("ETag" )).as ("Invalid ETag header " ).isNull ();
202
+ assertThat (response .getHeader ("ETag" )).as ("Invalid ETag" ).isNull ();
201
203
assertThat (response .getContentLength ()).as ("Invalid Content-Length header" ).isEqualTo (100 );
202
204
assertThat (response .getContentAsByteArray ()).as ("Invalid content" ).isEqualTo (responseBody );
203
205
}
@@ -207,7 +209,7 @@ public void filterSendErrorMessage() throws Exception {
207
209
final MockHttpServletRequest request = new MockHttpServletRequest ("GET" , "/hotels" );
208
210
MockHttpServletResponse response = new MockHttpServletResponse ();
209
211
210
- final byte [] responseBody = "Hello World" .getBytes ("UTF-8" );
212
+ final byte [] responseBody = "Hello World" .getBytes (StandardCharsets . UTF_8 );
211
213
FilterChain filterChain = (filterRequest , filterResponse ) -> {
212
214
assertThat (filterRequest ).as ("Invalid request passed" ).isEqualTo (request );
213
215
response .setContentLength (100 );
@@ -217,7 +219,7 @@ public void filterSendErrorMessage() throws Exception {
217
219
filter .doFilter (request , response , filterChain );
218
220
219
221
assertThat (response .getStatus ()).as ("Invalid status" ).isEqualTo (403 );
220
- assertThat (response .getHeader ("ETag" )).as ("Invalid ETag header " ).isNull ();
222
+ assertThat (response .getHeader ("ETag" )).as ("Invalid ETag" ).isNull ();
221
223
assertThat (response .getContentLength ()).as ("Invalid Content-Length header" ).isEqualTo (100 );
222
224
assertThat (response .getContentAsByteArray ()).as ("Invalid content" ).isEqualTo (responseBody );
223
225
assertThat (response .getErrorMessage ()).as ("Invalid error message" ).isEqualTo ("ERROR" );
@@ -228,7 +230,7 @@ public void filterSendRedirect() throws Exception {
228
230
final MockHttpServletRequest request = new MockHttpServletRequest ("GET" , "/hotels" );
229
231
MockHttpServletResponse response = new MockHttpServletResponse ();
230
232
231
- final byte [] responseBody = "Hello World" .getBytes ("UTF-8" );
233
+ final byte [] responseBody = "Hello World" .getBytes (StandardCharsets . UTF_8 );
232
234
FilterChain filterChain = (filterRequest , filterResponse ) -> {
233
235
assertThat (filterRequest ).as ("Invalid request passed" ).isEqualTo (request );
234
236
response .setContentLength (100 );
@@ -238,19 +240,18 @@ public void filterSendRedirect() throws Exception {
238
240
filter .doFilter (request , response , filterChain );
239
241
240
242
assertThat (response .getStatus ()).as ("Invalid status" ).isEqualTo (302 );
241
- assertThat (response .getHeader ("ETag" )).as ("Invalid ETag header " ).isNull ();
243
+ assertThat (response .getHeader ("ETag" )).as ("Invalid ETag" ).isNull ();
242
244
assertThat (response .getContentLength ()).as ("Invalid Content-Length header" ).isEqualTo (100 );
243
245
assertThat (response .getContentAsByteArray ()).as ("Invalid content" ).isEqualTo (responseBody );
244
246
assertThat (response .getRedirectedUrl ()).as ("Invalid redirect URL" ).isEqualTo ("https://www.google.com" );
245
247
}
246
248
247
- // SPR-13717
248
- @ Test
249
+ @ Test // SPR-13717
249
250
public void filterFlushResponse () throws Exception {
250
251
final MockHttpServletRequest request = new MockHttpServletRequest ("GET" , "/hotels" );
251
252
MockHttpServletResponse response = new MockHttpServletResponse ();
252
253
253
- final byte [] responseBody = "Hello World" .getBytes ("UTF-8" );
254
+ final byte [] responseBody = "Hello World" .getBytes (StandardCharsets . UTF_8 );
254
255
FilterChain filterChain = (filterRequest , filterResponse ) -> {
255
256
assertThat (filterRequest ).as ("Invalid request passed" ).isEqualTo (request );
256
257
((HttpServletResponse ) filterResponse ).setStatus (HttpServletResponse .SC_OK );
@@ -260,7 +261,7 @@ public void filterFlushResponse() throws Exception {
260
261
filter .doFilter (request , response , filterChain );
261
262
262
263
assertThat (response .getStatus ()).as ("Invalid status" ).isEqualTo (200 );
263
- assertThat (response .getHeader ("ETag" )).as ("Invalid ETag header " ).isEqualTo ("\" 0b10a8db164e0754105b7a99be72e3fe5\" " );
264
+ assertThat (response .getHeader ("ETag" )).as ("Invalid ETag" ).isEqualTo ("\" 0b10a8db164e0754105b7a99be72e3fe5\" " );
264
265
assertThat (response .getContentLength () > 0 ).as ("Invalid Content-Length header" ).isTrue ();
265
266
assertThat (response .getContentAsByteArray ()).as ("Invalid content" ).isEqualTo (responseBody );
266
267
}
0 commit comments