diff --git a/config/src/main/java/org/springframework/security/config/annotation/web/configurers/oauth2/client/AuthorizationCodeRequestRedirectFilterConfigurer.java b/config/src/main/java/org/springframework/security/config/annotation/web/configurers/oauth2/client/AuthorizationCodeRequestRedirectFilterConfigurer.java index ecf5b63bd5..a53d80d53b 100644 --- a/config/src/main/java/org/springframework/security/config/annotation/web/configurers/oauth2/client/AuthorizationCodeRequestRedirectFilterConfigurer.java +++ b/config/src/main/java/org/springframework/security/config/annotation/web/configurers/oauth2/client/AuthorizationCodeRequestRedirectFilterConfigurer.java @@ -59,10 +59,13 @@ final class AuthorizationCodeRequestRedirectFilterConfigurer void setAuthorizationRequestMatcher(T authorizationRequestMatcher) { @@ -86,6 +81,11 @@ public class AuthorizationCodeRequestRedirectFilter extends OncePerRequestFilter this.authorizationRequestMatcher = authorizationRequestMatcher; } + public final void setAuthorizationUriBuilder(AuthorizationRequestUriBuilder authorizationUriBuilder) { + Assert.notNull(authorizationUriBuilder, "authorizationUriBuilder cannot be null"); + this.authorizationUriBuilder = authorizationUriBuilder; + } + public final void setAuthorizationRequestRepository(AuthorizationRequestRepository authorizationRequestRepository) { Assert.notNull(authorizationRequestRepository, "authorizationRequestRepository cannot be null"); this.authorizationRequestRepository = authorizationRequestRepository; diff --git a/oauth2/oauth2-client/src/test/java/org/springframework/security/oauth2/client/web/AuthorizationCodeRequestRedirectFilterTests.java b/oauth2/oauth2-client/src/test/java/org/springframework/security/oauth2/client/web/AuthorizationCodeRequestRedirectFilterTests.java index 6a01fe598c..70478c5f3c 100644 --- a/oauth2/oauth2-client/src/test/java/org/springframework/security/oauth2/client/web/AuthorizationCodeRequestRedirectFilterTests.java +++ b/oauth2/oauth2-client/src/test/java/org/springframework/security/oauth2/client/web/AuthorizationCodeRequestRedirectFilterTests.java @@ -30,8 +30,6 @@ import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import java.net.URI; -import static org.assertj.core.api.Assertions.assertThat; - /** * Tests {@link AuthorizationCodeRequestRedirectFilter}. * @@ -41,12 +39,7 @@ public class AuthorizationCodeRequestRedirectFilterTests { @Test(expected = IllegalArgumentException.class) public void constructorWhenClientRegistrationRepositoryIsNullThenThrowIllegalArgumentException() { - new AuthorizationCodeRequestRedirectFilter(null, Mockito.mock(AuthorizationRequestUriBuilder.class)); - } - - @Test(expected = IllegalArgumentException.class) - public void constructorWhenAuthorizationRequestUriBuilderIsNullThenThrowIllegalArgumentException() { - new AuthorizationCodeRequestRedirectFilter(Mockito.mock(ClientRegistrationRepository.class), null); + new AuthorizationCodeRequestRedirectFilter(null); } @Test @@ -134,9 +127,8 @@ public class AuthorizationCodeRequestRedirectFilterTests { ClientRegistration... clientRegistrations) throws Exception { ClientRegistrationRepository clientRegistrationRepository = TestUtil.clientRegistrationRepository(clientRegistrations); - - AuthorizationCodeRequestRedirectFilter filter = new AuthorizationCodeRequestRedirectFilter( - clientRegistrationRepository, authorizationUriBuilder); + AuthorizationCodeRequestRedirectFilter filter = new AuthorizationCodeRequestRedirectFilter(clientRegistrationRepository); + filter.setAuthorizationUriBuilder(authorizationUriBuilder); return filter; }