@@ -291,6 +291,51 @@ public void payloadMaxLength() throws Exception {
291
291
assertThat (filter .afterRequestMessage ).doesNotContain ("Hello World" );
292
292
}
293
293
294
+ @ Test
295
+ public void allOptions () throws Exception {
296
+ filter .setIncludeQueryString (true );
297
+ filter .setIncludeClientInfo (true );
298
+ filter .setIncludeHeaders (true );
299
+ filter .setIncludePayload (true );
300
+
301
+ MockHttpServletRequest request = new MockHttpServletRequest ("POST" , "/hotels" );
302
+ request .setQueryString ("booking=42" );
303
+ request .setRemoteAddr ("4.2.2.2" );
304
+ request .setSession (new MockHttpSession (null , "42" ));
305
+ request .setRemoteUser ("Arthur" );
306
+ request .setContentType ("application/json" );
307
+ String requestBody = "{\" msg\" : \" Hello World\" }" ;
308
+ request .setContent (requestBody .getBytes (StandardCharsets .UTF_8 ));
309
+ MockHttpServletResponse response = new MockHttpServletResponse ();
310
+
311
+ FilterChain filterChain = (filterRequest , filterResponse ) -> {
312
+ ((HttpServletResponse ) filterResponse ).setStatus (HttpServletResponse .SC_OK );
313
+ String buf = FileCopyUtils .copyToString (filterRequest .getReader ());
314
+ assertThat (buf ).isEqualTo (requestBody );
315
+ };
316
+
317
+ filter .doFilter (request , response , filterChain );
318
+
319
+ assertThat (filter .beforeRequestMessage )
320
+ .isEqualTo ("Before request ["
321
+ + "POST /hotels?booking=42"
322
+ + ", client=4.2.2.2"
323
+ + ", session=42"
324
+ + ", user=Arthur"
325
+ + ", headers=[Content-Type:\" application/json;charset=ISO-8859-1\" , Content-Length:\" 22\" ]"
326
+ + "]" );
327
+
328
+ assertThat (filter .afterRequestMessage )
329
+ .isEqualTo ("After request ["
330
+ + "POST /hotels?booking=42"
331
+ + ", client=4.2.2.2"
332
+ + ", session=42"
333
+ + ", user=Arthur"
334
+ + ", headers=[Content-Type:\" application/json;charset=ISO-8859-1\" , Content-Length:\" 22\" ]"
335
+ + ", payload={\" msg\" : \" Hello World\" }"
336
+ + "]" );
337
+ }
338
+
294
339
295
340
private static class MyRequestLoggingFilter extends AbstractRequestLoggingFilter {
296
341
0 commit comments