From 06679a5583e6e5bbd8ec10a12f665cdfc561cc19 Mon Sep 17 00:00:00 2001 From: Sam Brannen Date: Wed, 11 May 2022 16:00:21 +0200 Subject: [PATCH] Fix tests in DispatcherServletTests See gh-28424 --- .../web/servlet/DispatcherServletTests.java | 13 ++++++++++--- 1 file changed, 10 insertions(+), 3 deletions(-) diff --git a/spring-webmvc/src/test/java/org/springframework/web/servlet/DispatcherServletTests.java b/spring-webmvc/src/test/java/org/springframework/web/servlet/DispatcherServletTests.java index 8a1621a652..61cc4ec1ae 100644 --- a/spring-webmvc/src/test/java/org/springframework/web/servlet/DispatcherServletTests.java +++ b/spring-webmvc/src/test/java/org/springframework/web/servlet/DispatcherServletTests.java @@ -30,6 +30,7 @@ import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletRequestWrapper; import javax.servlet.http.HttpServletResponse; +import org.assertj.core.api.InstanceOfAssertFactories; import org.junit.jupiter.api.BeforeEach; import org.junit.jupiter.api.Test; @@ -519,7 +520,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 @@ -536,12 +540,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