diff --git a/spring-test/src/main/java/org/springframework/test/web/servlet/request/AbstractMockHttpServletRequestBuilder.java b/spring-test/src/main/java/org/springframework/test/web/servlet/request/AbstractMockHttpServletRequestBuilder.java index c6b4ba460e2..ee9fb856cf5 100644 --- a/spring-test/src/main/java/org/springframework/test/web/servlet/request/AbstractMockHttpServletRequestBuilder.java +++ b/spring-test/src/main/java/org/springframework/test/web/servlet/request/AbstractMockHttpServletRequestBuilder.java @@ -74,6 +74,7 @@ import org.springframework.web.util.UrlPathHelper; * @author Arjen Poutsma * @author Sam Brannen * @author Kamill Sokol + * @author Réda Housni Alaoui * @since 6.2 * @param a self reference to the builder type */ @@ -854,16 +855,17 @@ public abstract class AbstractMockHttpServletRequestBuilder map) { diff --git a/spring-test/src/test/java/org/springframework/test/web/servlet/request/AbstractMockHttpServletRequestBuilderTests.java b/spring-test/src/test/java/org/springframework/test/web/servlet/request/AbstractMockHttpServletRequestBuilderTests.java index ba677f5266c..8f4707605d7 100644 --- a/spring-test/src/test/java/org/springframework/test/web/servlet/request/AbstractMockHttpServletRequestBuilderTests.java +++ b/spring-test/src/test/java/org/springframework/test/web/servlet/request/AbstractMockHttpServletRequestBuilderTests.java @@ -31,6 +31,7 @@ import static org.assertj.core.api.Assertions.assertThat; * Tests for {@link AbstractMockHttpServletRequestBuilder} * * @author Stephane Nicoll + * @author Réda Housni Alaoui */ class AbstractMockHttpServletRequestBuilderTests { @@ -97,6 +98,14 @@ class AbstractMockHttpServletRequestBuilderTests { } + @Test + void pathInfoIsNotMutatedByBuildMethod() { + TestRequestBuilder builder = new TestRequestBuilder(HttpMethod.GET).uri("/b"); + assertThat(buildRequest(builder).getPathInfo()).isEqualTo("/b"); + builder.uri("/a"); + assertThat(buildRequest(builder).getPathInfo()).isEqualTo("/a"); + } + private MockHttpServletRequest buildRequest(AbstractMockHttpServletRequestBuilder builder) { return builder.buildRequest(this.servletContext); }