Browse Source

Merge branch '5.3.x'

# Conflicts:
#	gradle.properties
#	spring-webmvc/src/test/java/org/springframework/web/servlet/DispatcherServletTests.java
pull/28453/head
Sam Brannen 4 years ago
parent
commit
6325ca95a6
  1. 41
      spring-webmvc/src/test/java/org/springframework/web/servlet/DispatcherServletTests.java

41
spring-webmvc/src/test/java/org/springframework/web/servlet/DispatcherServletTests.java

@ -1,5 +1,5 @@ @@ -1,5 +1,5 @@
/*
* Copyright 2002-2020 the original author or authors.
* Copyright 2002-2022 the original author or authors.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@ -29,6 +29,7 @@ import jakarta.servlet.ServletException; @@ -29,6 +29,7 @@ import jakarta.servlet.ServletException;
import jakarta.servlet.http.HttpServletRequest;
import jakarta.servlet.http.HttpServletRequestWrapper;
import jakarta.servlet.http.HttpServletResponse;
import org.assertj.core.api.InstanceOfAssertFactories;
import org.junit.jupiter.api.BeforeEach;
import org.junit.jupiter.api.Test;
@ -169,7 +170,7 @@ public class DispatcherServletTests { @@ -169,7 +170,7 @@ public class DispatcherServletTests {
request.addUserRole("role1");
MockHttpServletResponse response = new MockHttpServletResponse();
complexDispatcherServlet.service(request, response);
assertThat("myform.jsp".equals(response.getForwardedUrl())).as("forwarded to form").isTrue();
assertThat(response.getForwardedUrl()).as("forwarded URL").isEqualTo("myform.jsp");
}
@Test
@ -197,7 +198,7 @@ public class DispatcherServletTests { @@ -197,7 +198,7 @@ public class DispatcherServletTests {
MockHttpServletRequest request = new MockHttpServletRequest(getServletContext(), "GET", "/unknown.do");
MockHttpServletResponse response = new MockHttpServletResponse();
complexDispatcherServlet.service(request, response);
assertThat(response.getForwardedUrl()).as("forwarded to failed").isEqualTo("failed0.jsp");
assertThat(response.getForwardedUrl()).as("forwarded URL").isEqualTo("failed0.jsp");
assertThat(request.getAttribute("exception").getClass().equals(ServletException.class)).as("Exception exposed").isTrue();
}
@ -262,10 +263,10 @@ public class DispatcherServletTests { @@ -262,10 +263,10 @@ public class DispatcherServletTests {
request.setAttribute("fail", Boolean.TRUE);
MockHttpServletResponse response = new MockHttpServletResponse();
complexDispatcherServlet.service(request, response);
assertThat("failed0.jsp".equals(response.getForwardedUrl())).as("forwarded to failed").isTrue();
assertThat(response.getForwardedUrl()).as("forwarded URL").isEqualTo("failed0.jsp");
assertThat(response.getStatus()).isEqualTo(200);
assertThat(request.getAttribute(
SimpleMappingExceptionResolver.DEFAULT_EXCEPTION_ATTRIBUTE) instanceof MaxUploadSizeExceededException).as("correct exception").isTrue();
assertThat(request.getAttribute(SimpleMappingExceptionResolver.DEFAULT_EXCEPTION_ATTRIBUTE))
.isInstanceOf(MaxUploadSizeExceededException.class);
}
@Test
@ -294,7 +295,7 @@ public class DispatcherServletTests { @@ -294,7 +295,7 @@ public class DispatcherServletTests {
MockHttpServletResponse response = new MockHttpServletResponse();
complexDispatcherServlet.service(request, response);
assertThat(response.getStatus()).isEqualTo(200);
assertThat("failed1.jsp".equals(response.getForwardedUrl())).as("forwarded to failed").isTrue();
assertThat(response.getForwardedUrl()).as("forwarded URL").isEqualTo("failed1.jsp");
}
@Test
@ -306,7 +307,7 @@ public class DispatcherServletTests { @@ -306,7 +307,7 @@ public class DispatcherServletTests {
MockHttpServletResponse response = new MockHttpServletResponse();
complexDispatcherServlet.service(request, response);
assertThat(response.getStatus()).isEqualTo(200);
assertThat(response.getForwardedUrl()).as("forwarded to failed").isEqualTo("failed2.jsp");
assertThat(response.getForwardedUrl()).as("forwarded URL").isEqualTo("failed2.jsp");
assertThat(request.getAttribute("exception") instanceof IllegalAccessException).as("Exception exposed").isTrue();
}
@ -319,7 +320,7 @@ public class DispatcherServletTests { @@ -319,7 +320,7 @@ public class DispatcherServletTests {
MockHttpServletResponse response = new MockHttpServletResponse();
complexDispatcherServlet.service(request, response);
assertThat(response.getStatus()).isEqualTo(200);
assertThat(response.getForwardedUrl()).as("forwarded to failed").isEqualTo("failed3.jsp");
assertThat(response.getForwardedUrl()).as("forwarded URL").isEqualTo("failed3.jsp");
assertThat(request.getAttribute("exception") instanceof ServletException).as("Exception exposed").isTrue();
}
@ -332,7 +333,7 @@ public class DispatcherServletTests { @@ -332,7 +333,7 @@ public class DispatcherServletTests {
MockHttpServletResponse response = new MockHttpServletResponse();
complexDispatcherServlet.service(request, response);
assertThat(response.getStatus()).isEqualTo(500);
assertThat(response.getForwardedUrl()).as("forwarded to failed").isEqualTo("failed1.jsp");
assertThat(response.getForwardedUrl()).as("forwarded URL").isEqualTo("failed1.jsp");
assertThat(request.getAttribute("exception") instanceof IllegalAccessException).as("Exception exposed").isTrue();
}
@ -345,7 +346,7 @@ public class DispatcherServletTests { @@ -345,7 +346,7 @@ public class DispatcherServletTests {
MockHttpServletResponse response = new MockHttpServletResponse();
complexDispatcherServlet.service(request, response);
assertThat(response.getStatus()).isEqualTo(500);
assertThat(response.getForwardedUrl()).as("forwarded to failed").isEqualTo("failed1.jsp");
assertThat(response.getForwardedUrl()).as("forwarded URL").isEqualTo("failed1.jsp");
assertThat(request.getAttribute("exception") instanceof ServletException).as("Exception exposed").isTrue();
}
@ -358,7 +359,7 @@ public class DispatcherServletTests { @@ -358,7 +359,7 @@ public class DispatcherServletTests {
MockHttpServletResponse response = new MockHttpServletResponse();
complexDispatcherServlet.service(request, response);
assertThat(response.getStatus()).isEqualTo(200);
assertThat(response.getForwardedUrl()).as("forwarded to failed").isEqualTo("failed0.jsp");
assertThat(response.getForwardedUrl()).as("forwarded URL").isEqualTo("failed0.jsp");
assertThat(request.getAttribute("exception").getClass().equals(RuntimeException.class)).as("Exception exposed").isTrue();
}
@ -371,7 +372,7 @@ public class DispatcherServletTests { @@ -371,7 +372,7 @@ public class DispatcherServletTests {
MockHttpServletResponse response = new MockHttpServletResponse();
complexDispatcherServlet.service(request, response);
assertThat(response.getStatus()).isEqualTo(200);
assertThat(response.getForwardedUrl()).as("forwarded to failed").isEqualTo("failed0.jsp");
assertThat(response.getForwardedUrl()).as("forwarded URL").isEqualTo("failed0.jsp");
assertThat(request.getAttribute("exception").getClass().equals(ServletException.class)).as("Exception exposed").isTrue();
}
@ -396,7 +397,7 @@ public class DispatcherServletTests { @@ -396,7 +397,7 @@ public class DispatcherServletTests {
MockHttpServletResponse response = new MockHttpServletResponse();
complexDispatcherServlet.service(request, response);
assertThat(response.getStatus()).isEqualTo(200);
assertThat(response.getForwardedUrl()).as("forwarded to failed").isEqualTo("failed0.jsp");
assertThat(response.getForwardedUrl()).as("forwarded URL").isEqualTo("failed0.jsp");
assertThat(request.getAttribute("exception").getClass().equals(ServletException.class)).as("Exception exposed").isTrue();
}
@ -518,7 +519,10 @@ public class DispatcherServletTests { @@ -518,7 +519,10 @@ public class DispatcherServletTests {
request = new MockHttpServletRequest(getServletContext(), "GET", "/form.do");
response = new MockHttpServletResponse();
request.addParameter("fail", "yes");
complexDispatcherServlet.service(request, response);
assertThat(response.getForwardedUrl()).as("forwarded URL").isEqualTo("failed1.jsp");
assertThat(request.getAttribute("exception")).isNull();
}
@Test
@ -535,12 +539,15 @@ public class DispatcherServletTests { @@ -535,12 +539,15 @@ public class DispatcherServletTests {
complexDispatcherServlet.service(request, response);
assertThat(response.getContentAsString()).isEqualTo("body");
// SimpleControllerHandlerAdapter not detected
// MyHandlerAdapter not detected
request = new MockHttpServletRequest(getServletContext(), "GET", "/form.do");
response = new MockHttpServletResponse();
request.addParameter("fail", "yes");
complexDispatcherServlet.service(request, response);
assertThat(response.getForwardedUrl()).as("forwarded to failed").isEqualTo("failed0.jsp");
assertThat(request.getAttribute("exception").getClass().equals(ServletException.class)).as("Exception exposed").isTrue();
assertThat(response.getForwardedUrl()).as("forwarded URL").isEqualTo("failed0.jsp");
assertThat(request.getAttribute("exception"))
.asInstanceOf(InstanceOfAssertFactories.type(ServletException.class))
.extracting(Throwable::getMessage).asString().startsWith("No adapter for handler");
}
@Test

Loading…
Cancel
Save