Skip to content

Commit 1eec51a

Browse files
committed
Polish SwitchUserFilterTests
Ensure that the appropriate HTTP Method is specified in tests Issue gh-16417
1 parent 860f130 commit 1eec51a

File tree

1 file changed

+6
-12
lines changed

1 file changed

+6
-12
lines changed

web/src/test/java/org/springframework/security/web/authentication/switchuser/SwitchUserFilterTests.java

+6-12
Original file line numberDiff line numberDiff line change
@@ -118,8 +118,7 @@ private Authentication switchToUserWithAuthorityRole(String name, String switchA
118118
public void requiresExitUserMatchesCorrectly() {
119119
SwitchUserFilter filter = new SwitchUserFilter();
120120
filter.setExitUserUrl("/j_spring_security_my_exit_user");
121-
MockHttpServletRequest request = new MockHttpServletRequest();
122-
request.setRequestURI("/j_spring_security_my_exit_user");
121+
MockHttpServletRequest request = new MockHttpServletRequest("POST", "/j_spring_security_my_exit_user");
123122
assertThat(filter.requiresExitUser(request)).isTrue();
124123
}
125124

@@ -158,8 +157,7 @@ public void requiresExitUserWhenMatcherThenWorks() {
158157
public void requiresSwitchMatchesCorrectly() {
159158
SwitchUserFilter filter = new SwitchUserFilter();
160159
filter.setSwitchUserUrl("/j_spring_security_my_switch_user");
161-
MockHttpServletRequest request = new MockHttpServletRequest();
162-
request.setRequestURI("/j_spring_security_my_switch_user");
160+
MockHttpServletRequest request = new MockHttpServletRequest("POST", "/j_spring_security_my_switch_user");
163161
assertThat(filter.requiresSwitchUser(request)).isTrue();
164162
}
165163

@@ -230,8 +228,7 @@ public void attemptSwitchUserIsSuccessfulWithValidUser() {
230228

231229
@Test
232230
public void switchToLockedAccountCausesRedirectToSwitchFailureUrl() throws Exception {
233-
MockHttpServletRequest request = new MockHttpServletRequest();
234-
request.setRequestURI("/login/impersonate");
231+
MockHttpServletRequest request = new MockHttpServletRequest("POST", "/login/impersonate");
235232
request.addParameter(SwitchUserFilter.SPRING_SECURITY_SWITCH_USERNAME_KEY, "mcgarrett");
236233
MockHttpServletResponse response = new MockHttpServletResponse();
237234
SwitchUserFilter filter = new SwitchUserFilter();
@@ -385,8 +382,7 @@ public void testSwitchRequestFromDanoToJackLord() throws Exception {
385382
"hawaii50");
386383
SecurityContextHolder.getContext().setAuthentication(auth);
387384
// http request
388-
MockHttpServletRequest request = new MockHttpServletRequest();
389-
request.setRequestURI("/webapp/login/impersonate");
385+
MockHttpServletRequest request = new MockHttpServletRequest("POST", "/webapp/login/impersonate");
390386
request.setContextPath("/webapp");
391387
request.addParameter(SwitchUserFilter.SPRING_SECURITY_SWITCH_USERNAME_KEY, "jacklord");
392388
// http response
@@ -519,11 +515,10 @@ void filterWhenDefaultSecurityContextRepositoryThenHttpSessionRepository() {
519515
@Test
520516
void doFilterWhenSwitchUserThenSaveSecurityContext() throws ServletException, IOException {
521517
SecurityContextRepository securityContextRepository = mock(SecurityContextRepository.class);
522-
MockHttpServletRequest request = new MockHttpServletRequest();
518+
MockHttpServletRequest request = new MockHttpServletRequest("POST", "/login/impersonate");
523519
MockHttpServletResponse response = new MockHttpServletResponse();
524520
MockFilterChain filterChain = new MockFilterChain();
525521
request.setParameter(SwitchUserFilter.SPRING_SECURITY_SWITCH_USERNAME_KEY, "jacklord");
526-
request.setRequestURI("/login/impersonate");
527522
SwitchUserFilter filter = new SwitchUserFilter();
528523
filter.setSecurityContextRepository(securityContextRepository);
529524
filter.setUserDetailsService(new MockUserDetailsService());
@@ -546,11 +541,10 @@ void doFilterWhenExitUserThenSaveSecurityContext() throws ServletException, IOEx
546541
"hawaii50", adminAuths);
547542
SecurityContextHolder.getContext().setAuthentication(admin);
548543
SecurityContextRepository securityContextRepository = mock(SecurityContextRepository.class);
549-
MockHttpServletRequest request = new MockHttpServletRequest();
544+
MockHttpServletRequest request = new MockHttpServletRequest("POST", "/logout/impersonate");
550545
MockHttpServletResponse response = new MockHttpServletResponse();
551546
MockFilterChain filterChain = new MockFilterChain();
552547
request.setParameter(SwitchUserFilter.SPRING_SECURITY_SWITCH_USERNAME_KEY, "jacklord");
553-
request.setRequestURI("/logout/impersonate");
554548
SwitchUserFilter filter = new SwitchUserFilter();
555549
filter.setSecurityContextRepository(securityContextRepository);
556550
filter.setUserDetailsService(new MockUserDetailsService());

0 commit comments

Comments
 (0)