diff --git a/oauth2-authorization-server/src/test/java/org/springframework/security/oauth2/server/authorization/web/OAuth2DeviceAuthorizationEndpointFilterTests.java b/oauth2-authorization-server/src/test/java/org/springframework/security/oauth2/server/authorization/web/OAuth2DeviceAuthorizationEndpointFilterTests.java index 8b09ec16..38f82ecc 100644 --- a/oauth2-authorization-server/src/test/java/org/springframework/security/oauth2/server/authorization/web/OAuth2DeviceAuthorizationEndpointFilterTests.java +++ b/oauth2-authorization-server/src/test/java/org/springframework/security/oauth2/server/authorization/web/OAuth2DeviceAuthorizationEndpointFilterTests.java @@ -241,8 +241,10 @@ public class OAuth2DeviceAuthorizationEndpointFilterTests { assertThat(deviceCode.getExpiresAt()).isAfter(deviceCode.getIssuedAt()); } + // gh-1714 @Test - public void doFilterWhenDeviceAuthorizationRequestWithContextPathThenDeviceAuthorizationResponse() throws Exception { + public void doFilterWhenDeviceAuthorizationRequestWithContextPathThenVerificationUriIncludesContextPath() + throws Exception { Authentication authenticationResult = createAuthentication(); given(this.authenticationManager.authenticate(any(Authentication.class))).willReturn(authenticationResult); @@ -256,22 +258,14 @@ public class OAuth2DeviceAuthorizationEndpointFilterTests { this.filter.doFilter(request, response, filterChain); assertThat(response.getStatus()).isEqualTo(HttpStatus.OK.value()); - ArgumentCaptor deviceAuthorizationRequestAuthenticationCaptor = ArgumentCaptor - .forClass(OAuth2DeviceAuthorizationRequestAuthenticationToken.class); - verify(this.authenticationManager).authenticate(deviceAuthorizationRequestAuthenticationCaptor.capture()); + verify(this.authenticationManager).authenticate(any(OAuth2DeviceAuthorizationRequestAuthenticationToken.class)); verifyNoInteractions(filterChain); OAuth2DeviceAuthorizationResponse deviceAuthorizationResponse = readDeviceAuthorizationResponse(response); String verificationUri = ISSUER_URI + "/contextPath" + VERIFICATION_URI; assertThat(deviceAuthorizationResponse.getVerificationUri()).isEqualTo(verificationUri); assertThat(deviceAuthorizationResponse.getVerificationUriComplete()) - .isEqualTo("%s?%s=%s".formatted(verificationUri, OAuth2ParameterNames.USER_CODE, USER_CODE)); - OAuth2DeviceCode deviceCode = deviceAuthorizationResponse.getDeviceCode(); - assertThat(deviceCode.getTokenValue()).isEqualTo(DEVICE_CODE); - assertThat(deviceCode.getExpiresAt()).isAfter(deviceCode.getIssuedAt()); - OAuth2UserCode userCode = deviceAuthorizationResponse.getUserCode(); - assertThat(userCode.getTokenValue()).isEqualTo(USER_CODE); - assertThat(deviceCode.getExpiresAt()).isAfter(deviceCode.getIssuedAt()); + .isEqualTo("%s?%s=%s".formatted(verificationUri, OAuth2ParameterNames.USER_CODE, USER_CODE)); } @Test