Browse Source

Merge pull request #18721 from coehgns/main

Add tests for PathPatternRequestMatcher request path caching
pull/18354/head
Rob Winch 4 weeks ago committed by GitHub
parent
commit
4d0627e6c0
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
  1. 19
      web/src/test/java/org/springframework/security/web/servlet/util/matcher/PathPatternRequestMatcherTests.java

19
web/src/test/java/org/springframework/security/web/servlet/util/matcher/PathPatternRequestMatcherTests.java

@ -154,6 +154,25 @@ public class PathPatternRequestMatcherTests { @@ -154,6 +154,25 @@ public class PathPatternRequestMatcherTests {
assertThat(matcher.matches(mock)).isFalse();
}
@Test
void matcherWhenRequestPathNotParsedThenDoesNotLeaveParsedRequestPath() {
RequestMatcher matcher = pathPattern("/uri");
MockHttpServletRequest request = new MockHttpServletRequest("GET", "/uri");
assertThat(ServletRequestPathUtils.hasParsedRequestPath(request)).isFalse();
assertThat(matcher.matches(request)).isTrue();
assertThat(ServletRequestPathUtils.hasParsedRequestPath(request)).isFalse();
}
@Test
void matcherWhenRequestPathAlreadyParsedThenLeavesParsedRequestPath() {
RequestMatcher matcher = pathPattern("/uri");
MockHttpServletRequest request = new MockHttpServletRequest("GET", "/uri");
ServletRequestPathUtils.parseAndCache(request);
assertThat(ServletRequestPathUtils.hasParsedRequestPath(request)).isTrue();
assertThat(matcher.matches(request)).isTrue();
assertThat(ServletRequestPathUtils.hasParsedRequestPath(request)).isTrue();
}
MockHttpServletRequest request(String uri) {
MockHttpServletRequest request = new MockHttpServletRequest("GET", uri);
ServletRequestPathUtils.parseAndCache(request);

Loading…
Cancel
Save