From dfd572a4d2fd42194f9233c331ec9ee9adad83e2 Mon Sep 17 00:00:00 2001 From: Joe Grandja Date: Tue, 4 Sep 2018 15:23:11 -0400 Subject: [PATCH] Polish --- .../http/OAuth2ErrorResponseErrorHandler.java | 2 +- ...OAuth2UserRequestEntityConverterTests.java | 58 +++++-------------- 2 files changed, 15 insertions(+), 45 deletions(-) diff --git a/oauth2/oauth2-client/src/main/java/org/springframework/security/oauth2/client/http/OAuth2ErrorResponseErrorHandler.java b/oauth2/oauth2-client/src/main/java/org/springframework/security/oauth2/client/http/OAuth2ErrorResponseErrorHandler.java index a6ec8d1312..28f1027e63 100644 --- a/oauth2/oauth2-client/src/main/java/org/springframework/security/oauth2/client/http/OAuth2ErrorResponseErrorHandler.java +++ b/oauth2/oauth2-client/src/main/java/org/springframework/security/oauth2/client/http/OAuth2ErrorResponseErrorHandler.java @@ -54,7 +54,7 @@ public class OAuth2ErrorResponseErrorHandler implements ResponseErrorHandler { // A Bearer Token Error may be in the WWW-Authenticate response header // See https://tools.ietf.org/html/rfc6750#section-3 - OAuth2Error oauth2Error = this.readErrorFromWwwAuthenticate(response.getHeaders()); + OAuth2Error oauth2Error = this.readErrorFromWwwAuthenticate(response.getHeaders()); if (oauth2Error == null) { oauth2Error = this.oauth2ErrorConverter.read(OAuth2Error.class, response); } diff --git a/oauth2/oauth2-client/src/test/java/org/springframework/security/oauth2/client/userinfo/OAuth2UserRequestEntityConverterTests.java b/oauth2/oauth2-client/src/test/java/org/springframework/security/oauth2/client/userinfo/OAuth2UserRequestEntityConverterTests.java index b798c1a786..b6ca08140a 100644 --- a/oauth2/oauth2-client/src/test/java/org/springframework/security/oauth2/client/userinfo/OAuth2UserRequestEntityConverterTests.java +++ b/oauth2/oauth2-client/src/test/java/org/springframework/security/oauth2/client/userinfo/OAuth2UserRequestEntityConverterTests.java @@ -15,16 +15,14 @@ */ package org.springframework.security.oauth2.client.userinfo; -import org.junit.Before; import org.junit.Test; import org.springframework.http.HttpHeaders; import org.springframework.http.HttpMethod; import org.springframework.http.MediaType; import org.springframework.http.RequestEntity; import org.springframework.security.oauth2.client.registration.ClientRegistration; +import org.springframework.security.oauth2.client.registration.TestClientRegistrations; import org.springframework.security.oauth2.core.AuthenticationMethod; -import org.springframework.security.oauth2.core.AuthorizationGrantType; -import org.springframework.security.oauth2.core.ClientAuthenticationMethod; import org.springframework.security.oauth2.core.OAuth2AccessToken; import org.springframework.security.oauth2.core.endpoint.OAuth2ParameterNames; import org.springframework.util.MultiValueMap; @@ -43,35 +41,15 @@ import static org.springframework.http.MediaType.APPLICATION_FORM_URLENCODED_VAL */ public class OAuth2UserRequestEntityConverterTests { private OAuth2UserRequestEntityConverter converter = new OAuth2UserRequestEntityConverter(); - private OAuth2UserRequest userRequest; - - @Before - public void setup() { - ClientRegistration clientRegistration = ClientRegistration.withRegistrationId("registration-1") - .clientId("client-1") - .clientSecret("secret") - .clientAuthenticationMethod(ClientAuthenticationMethod.BASIC) - .authorizationGrantType(AuthorizationGrantType.AUTHORIZATION_CODE) - .redirectUriTemplate("https://client.com/callback/client-1") - .scope("read", "write") - .authorizationUri("https://provider.com/oauth2/authorize") - .tokenUri("https://provider.com/oauth2/token") - .userInfoUri("https://provider.com/user") - .userInfoAuthenticationMethod(AuthenticationMethod.HEADER) - .userNameAttributeName("id") - .build(); - OAuth2AccessToken accessToken = new OAuth2AccessToken( - OAuth2AccessToken.TokenType.BEARER, "access-token-1234", Instant.now(), - Instant.now().plusSeconds(3600), new LinkedHashSet<>(Arrays.asList("read", "write"))); - this.userRequest = new OAuth2UserRequest(clientRegistration, accessToken); - } @SuppressWarnings("unchecked") @Test public void convertWhenAuthenticationMethodHeaderThenGetRequest() { - RequestEntity requestEntity = this.converter.convert(this.userRequest); + ClientRegistration clientRegistration = TestClientRegistrations.clientRegistration().build(); + OAuth2UserRequest userRequest = new OAuth2UserRequest( + clientRegistration, this.createAccessToken()); - ClientRegistration clientRegistration = this.userRequest.getClientRegistration(); + RequestEntity requestEntity = this.converter.convert(userRequest); assertThat(requestEntity.getMethod()).isEqualTo(HttpMethod.GET); assertThat(requestEntity.getUrl().toASCIIString()).isEqualTo( @@ -80,17 +58,17 @@ public class OAuth2UserRequestEntityConverterTests { HttpHeaders headers = requestEntity.getHeaders(); assertThat(headers.getAccept()).contains(MediaType.APPLICATION_JSON_UTF8); assertThat(headers.getFirst(HttpHeaders.AUTHORIZATION)).isEqualTo( - "Bearer " + this.userRequest.getAccessToken().getTokenValue()); + "Bearer " + userRequest.getAccessToken().getTokenValue()); } @SuppressWarnings("unchecked") @Test public void convertWhenAuthenticationMethodFormThenPostRequest() { - ClientRegistration clientRegistration = this.from(this.userRequest.getClientRegistration()) + ClientRegistration clientRegistration = TestClientRegistrations.clientRegistration() .userInfoAuthenticationMethod(AuthenticationMethod.FORM) .build(); OAuth2UserRequest userRequest = new OAuth2UserRequest( - clientRegistration, this.userRequest.getAccessToken()); + clientRegistration, this.createAccessToken()); RequestEntity requestEntity = this.converter.convert(userRequest); @@ -105,21 +83,13 @@ public class OAuth2UserRequestEntityConverterTests { MultiValueMap formParameters = (MultiValueMap) requestEntity.getBody(); assertThat(formParameters.getFirst(OAuth2ParameterNames.ACCESS_TOKEN)).isEqualTo( - this.userRequest.getAccessToken().getTokenValue()); + userRequest.getAccessToken().getTokenValue()); } - private ClientRegistration.Builder from(ClientRegistration registration) { - return ClientRegistration.withRegistrationId(registration.getRegistrationId()) - .clientId(registration.getClientId()) - .clientSecret(registration.getClientSecret()) - .clientAuthenticationMethod(registration.getClientAuthenticationMethod()) - .authorizationGrantType(registration.getAuthorizationGrantType()) - .redirectUriTemplate(registration.getRedirectUriTemplate()) - .scope(registration.getScopes()) - .authorizationUri(registration.getProviderDetails().getAuthorizationUri()) - .tokenUri(registration.getProviderDetails().getTokenUri()) - .userInfoUri(registration.getProviderDetails().getUserInfoEndpoint().getUri()) - .userNameAttributeName(registration.getProviderDetails().getUserInfoEndpoint().getUserNameAttributeName()) - .clientName(registration.getClientName()); + private OAuth2AccessToken createAccessToken() { + OAuth2AccessToken accessToken = new OAuth2AccessToken( + OAuth2AccessToken.TokenType.BEARER, "access-token-1234", Instant.now(), + Instant.now().plusSeconds(3600), new LinkedHashSet<>(Arrays.asList("read", "write"))); + return accessToken; } }