Merge branch '5.3.x'
# Conflicts: # gradle.properties # spring-webmvc/src/test/java/org/springframework/web/servlet/DispatcherServletTests.java
This commit is contained in:
@@ -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;
|
||||
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 {
|
||||
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 {
|
||||
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 {
|
||||
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 {
|
||||
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 {
|
||||
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 {
|
||||
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 {
|
||||
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 {
|
||||
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 {
|
||||
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 {
|
||||
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 {
|
||||
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 {
|
||||
|
||||
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 {
|
||||
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
|
||||
|
||||
Reference in New Issue
Block a user