Skip to content

Commit fb936e2

Browse files
committed
Polish CookieRequestCacheTests
Issue gh-8817 Issue gh-8820
1 parent 41f26b7 commit fb936e2

File tree

1 file changed

+22
-20
lines changed

1 file changed

+22
-20
lines changed

web/src/test/java/org/springframework/security/web/savedrequest/CookieRequestCacheTests.java

+22-20
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,6 @@
1818
import org.junit.Test;
1919
import org.springframework.mock.web.MockHttpServletRequest;
2020
import org.springframework.mock.web.MockHttpServletResponse;
21-
import org.springframework.util.StringUtils;
2221

2322
import javax.servlet.http.Cookie;
2423
import javax.servlet.http.HttpServletRequest;
@@ -39,7 +38,13 @@ public class CookieRequestCacheTests {
3938
public void saveRequestWhenMatchesThenSavedRequestInACookieOnResponse() {
4039
CookieRequestCache cookieRequestCache = new CookieRequestCache();
4140

42-
MockHttpServletRequest request = requestToSave();
41+
MockHttpServletRequest request = new MockHttpServletRequest();
42+
request.setServerPort(443);
43+
request.setSecure(true);
44+
request.setScheme("https");
45+
request.setServerName("abc.com");
46+
request.setRequestURI("/destination");
47+
request.setQueryString("param1=a&param2=b&param3=1122");
4348
MockHttpServletResponse response = new MockHttpServletResponse();
4449

4550
cookieRequestCache.saveRequest(request, response);
@@ -51,10 +56,9 @@ public void saveRequestWhenMatchesThenSavedRequestInACookieOnResponse() {
5156
assertThat(redirectUrl).isEqualTo("https://abc.com/destination?param1=a&param2=b&param3=1122");
5257

5358
assertThat(savedCookie.getMaxAge()).isEqualTo(-1);
54-
assertThat(savedCookie.getPath()).isEqualTo(StringUtils.isEmpty(request.getContextPath()) ? "/" : request.getContextPath());
59+
assertThat(savedCookie.getPath()).isEqualTo("/");
5560
assertThat(savedCookie.isHttpOnly()).isTrue();
5661
assertThat(savedCookie.getSecure()).isTrue();
57-
5862
}
5963

6064
@Test
@@ -118,13 +122,18 @@ public void matchingRequestWhenRequestDoesNotContainSavedRequestCookieThenReturn
118122
HttpServletRequest matchingRequest = cookieRequestCache.getMatchingRequest(new MockHttpServletRequest(), response);
119123
assertThat(matchingRequest).isNull();
120124
assertThat(response.getCookie(DEFAULT_COOKIE_NAME)).isNull();
121-
122125
}
123126

124127
@Test
125128
public void matchingRequestWhenRequestContainsSavedRequestCookieThenSetsAnExpiredCookieInResponse() {
126129
CookieRequestCache cookieRequestCache = new CookieRequestCache();
127-
MockHttpServletRequest request = requestToSave();
130+
MockHttpServletRequest request = new MockHttpServletRequest();
131+
request.setServerPort(443);
132+
request.setSecure(true);
133+
request.setScheme("https");
134+
request.setServerName("abc.com");
135+
request.setRequestURI("/destination");
136+
request.setQueryString("param1=a&param2=b&param3=1122");
128137

129138
String redirectUrl = "https://abc.com/destination?param1=a&param2=b&param3=1122";
130139
request.setCookies(new Cookie(DEFAULT_COOKIE_NAME, encodeCookie(redirectUrl)));
@@ -138,9 +147,14 @@ public void matchingRequestWhenRequestContainsSavedRequestCookieThenSetsAnExpire
138147
}
139148

140149
@Test
141-
public void notMatchingRequestWhenRequestNotContainsSavedRequestCookie() {
150+
public void requestWhenDoesNotMatchSavedRequestThenDoesNotClearCookie() {
142151
CookieRequestCache cookieRequestCache = new CookieRequestCache();
143-
MockHttpServletRequest request = requestToSave();
152+
MockHttpServletRequest request = new MockHttpServletRequest();
153+
request.setServerPort(443);
154+
request.setSecure(true);
155+
request.setScheme("https");
156+
request.setServerName("abc.com");
157+
request.setRequestURI("/destination");
144158

145159
String redirectUrl = "https://abc.com/api";
146160
request.setCookies(new Cookie(DEFAULT_COOKIE_NAME, encodeCookie(redirectUrl)));
@@ -150,7 +164,6 @@ public void notMatchingRequestWhenRequestNotContainsSavedRequestCookie() {
150164
assertThat(matchingRequest).isNull();
151165
Cookie expiredCookie = response.getCookie(DEFAULT_COOKIE_NAME);
152166
assertThat(expiredCookie).isNull();
153-
154167
}
155168

156169
@Test
@@ -164,17 +177,6 @@ public void removeRequestWhenInvokedThenSetsAnExpiredCookieOnResponse() {
164177
assertThat(expiredCookie.getMaxAge()).isZero();
165178
}
166179

167-
private MockHttpServletRequest requestToSave() {
168-
MockHttpServletRequest request = new MockHttpServletRequest();
169-
request.setServerPort(443);
170-
request.setSecure(true);
171-
request.setScheme("https");
172-
request.setServerName("abc.com");
173-
request.setRequestURI("/destination");
174-
request.setQueryString("param1=a&param2=b&param3=1122");
175-
return request;
176-
}
177-
178180
private static String encodeCookie(String cookieValue) {
179181
return Base64.getEncoder().encodeToString(cookieValue.getBytes());
180182
}

0 commit comments

Comments
 (0)