|
|
|
@ -22,7 +22,6 @@ import java.util.LinkedHashMap; |
|
|
|
import java.util.Map; |
|
|
|
import java.util.Map; |
|
|
|
import java.util.Set; |
|
|
|
import java.util.Set; |
|
|
|
|
|
|
|
|
|
|
|
import org.junit.jupiter.api.Assertions; |
|
|
|
|
|
|
|
import org.junit.jupiter.api.BeforeEach; |
|
|
|
import org.junit.jupiter.api.BeforeEach; |
|
|
|
import org.junit.jupiter.api.Test; |
|
|
|
import org.junit.jupiter.api.Test; |
|
|
|
|
|
|
|
|
|
|
|
@ -30,6 +29,8 @@ import org.springframework.core.convert.converter.Converter; |
|
|
|
import org.springframework.security.oauth2.core.OAuth2AccessToken; |
|
|
|
import org.springframework.security.oauth2.core.OAuth2AccessToken; |
|
|
|
import org.springframework.security.oauth2.core.OAuth2RefreshToken; |
|
|
|
import org.springframework.security.oauth2.core.OAuth2RefreshToken; |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
import static org.assertj.core.api.Assertions.assertThat; |
|
|
|
|
|
|
|
|
|
|
|
/** |
|
|
|
/** |
|
|
|
* Tests for {@link DefaultMapOAuth2AccessTokenResponseConverter}. |
|
|
|
* Tests for {@link DefaultMapOAuth2AccessTokenResponseConverter}. |
|
|
|
* |
|
|
|
* |
|
|
|
@ -56,24 +57,24 @@ public class DefaultMapOAuth2AccessTokenResponseConverterTests { |
|
|
|
map.put("custom_parameter_2", "custom-value-2"); |
|
|
|
map.put("custom_parameter_2", "custom-value-2"); |
|
|
|
OAuth2AccessTokenResponse converted = this.messageConverter.convert(map); |
|
|
|
OAuth2AccessTokenResponse converted = this.messageConverter.convert(map); |
|
|
|
OAuth2AccessToken accessToken = converted.getAccessToken(); |
|
|
|
OAuth2AccessToken accessToken = converted.getAccessToken(); |
|
|
|
Assertions.assertNotNull(accessToken); |
|
|
|
assertThat(accessToken).isNotNull(); |
|
|
|
Assertions.assertEquals("access-token-1234", accessToken.getTokenValue()); |
|
|
|
assertThat(accessToken.getTokenValue()).isEqualTo("access-token-1234"); |
|
|
|
Assertions.assertEquals(OAuth2AccessToken.TokenType.BEARER, accessToken.getTokenType()); |
|
|
|
assertThat(accessToken.getTokenType()).isEqualTo(OAuth2AccessToken.TokenType.BEARER); |
|
|
|
Set<String> scopes = accessToken.getScopes(); |
|
|
|
Set<String> scopes = accessToken.getScopes(); |
|
|
|
Assertions.assertNotNull(scopes); |
|
|
|
assertThat(scopes).isNotNull(); |
|
|
|
Assertions.assertEquals(2, scopes.size()); |
|
|
|
assertThat(scopes.size()).isEqualTo(2); |
|
|
|
Assertions.assertTrue(scopes.contains("read")); |
|
|
|
assertThat(scopes.contains("read")).isTrue(); |
|
|
|
Assertions.assertTrue(scopes.contains("write")); |
|
|
|
assertThat(scopes.contains("write")).isTrue(); |
|
|
|
Assertions.assertEquals(3600, |
|
|
|
assertThat(Duration.between(accessToken.getIssuedAt(), accessToken.getExpiresAt()).getSeconds()) |
|
|
|
Duration.between(accessToken.getIssuedAt(), accessToken.getExpiresAt()).getSeconds()); |
|
|
|
.isEqualTo(3600); |
|
|
|
OAuth2RefreshToken refreshToken = converted.getRefreshToken(); |
|
|
|
OAuth2RefreshToken refreshToken = converted.getRefreshToken(); |
|
|
|
Assertions.assertNotNull(refreshToken); |
|
|
|
assertThat(refreshToken).isNotNull(); |
|
|
|
Assertions.assertEquals("refresh-token-1234", refreshToken.getTokenValue()); |
|
|
|
assertThat(refreshToken.getTokenValue()).isEqualTo("refresh-token-1234"); |
|
|
|
Map<String, Object> additionalParameters = converted.getAdditionalParameters(); |
|
|
|
Map<String, Object> additionalParameters = converted.getAdditionalParameters(); |
|
|
|
Assertions.assertNotNull(additionalParameters); |
|
|
|
assertThat(additionalParameters).isNotNull(); |
|
|
|
Assertions.assertEquals(2, additionalParameters.size()); |
|
|
|
assertThat(additionalParameters.size()).isEqualTo(2); |
|
|
|
Assertions.assertEquals("custom-value-1", additionalParameters.get("custom_parameter_1")); |
|
|
|
assertThat(additionalParameters.get("custom_parameter_1")).isEqualTo("custom-value-1"); |
|
|
|
Assertions.assertEquals("custom-value-2", additionalParameters.get("custom_parameter_2")); |
|
|
|
assertThat(additionalParameters.get("custom_parameter_2")).isEqualTo("custom-value-2"); |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
@Test |
|
|
|
@Test |
|
|
|
@ -83,19 +84,18 @@ public class DefaultMapOAuth2AccessTokenResponseConverterTests { |
|
|
|
map.put("token_type", "bearer"); |
|
|
|
map.put("token_type", "bearer"); |
|
|
|
OAuth2AccessTokenResponse converted = this.messageConverter.convert(map); |
|
|
|
OAuth2AccessTokenResponse converted = this.messageConverter.convert(map); |
|
|
|
OAuth2AccessToken accessToken = converted.getAccessToken(); |
|
|
|
OAuth2AccessToken accessToken = converted.getAccessToken(); |
|
|
|
Assertions.assertNotNull(accessToken); |
|
|
|
assertThat(accessToken).isNotNull(); |
|
|
|
Assertions.assertEquals("access-token-1234", accessToken.getTokenValue()); |
|
|
|
assertThat(accessToken.getTokenValue()).isEqualTo("access-token-1234"); |
|
|
|
Assertions.assertEquals(OAuth2AccessToken.TokenType.BEARER, accessToken.getTokenType()); |
|
|
|
assertThat(accessToken.getTokenType()).isEqualTo(OAuth2AccessToken.TokenType.BEARER); |
|
|
|
Set<String> scopes = accessToken.getScopes(); |
|
|
|
Set<String> scopes = accessToken.getScopes(); |
|
|
|
Assertions.assertNotNull(scopes); |
|
|
|
assertThat(scopes).isNotNull(); |
|
|
|
Assertions.assertEquals(0, scopes.size()); |
|
|
|
assertThat(scopes.size()).isEqualTo(0); |
|
|
|
Assertions.assertEquals(1, |
|
|
|
assertThat(Duration.between(accessToken.getIssuedAt(), accessToken.getExpiresAt()).getSeconds()).isEqualTo(1); |
|
|
|
Duration.between(accessToken.getIssuedAt(), accessToken.getExpiresAt()).getSeconds()); |
|
|
|
|
|
|
|
OAuth2RefreshToken refreshToken = converted.getRefreshToken(); |
|
|
|
OAuth2RefreshToken refreshToken = converted.getRefreshToken(); |
|
|
|
Assertions.assertNull(refreshToken); |
|
|
|
assertThat(refreshToken).isNull(); |
|
|
|
Map<String, Object> additionalParameters = converted.getAdditionalParameters(); |
|
|
|
Map<String, Object> additionalParameters = converted.getAdditionalParameters(); |
|
|
|
Assertions.assertNotNull(additionalParameters); |
|
|
|
assertThat(additionalParameters).isNotNull(); |
|
|
|
Assertions.assertEquals(0, additionalParameters.size()); |
|
|
|
assertThat(additionalParameters.size()).isEqualTo(0); |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
@Test |
|
|
|
@Test |
|
|
|
@ -106,19 +106,18 @@ public class DefaultMapOAuth2AccessTokenResponseConverterTests { |
|
|
|
map.put("expires_in", "2100-01-01-abc"); |
|
|
|
map.put("expires_in", "2100-01-01-abc"); |
|
|
|
OAuth2AccessTokenResponse converted = this.messageConverter.convert(map); |
|
|
|
OAuth2AccessTokenResponse converted = this.messageConverter.convert(map); |
|
|
|
OAuth2AccessToken accessToken = converted.getAccessToken(); |
|
|
|
OAuth2AccessToken accessToken = converted.getAccessToken(); |
|
|
|
Assertions.assertNotNull(accessToken); |
|
|
|
assertThat(accessToken).isNotNull(); |
|
|
|
Assertions.assertEquals("access-token-1234", accessToken.getTokenValue()); |
|
|
|
assertThat(accessToken.getTokenValue()).isEqualTo("access-token-1234"); |
|
|
|
Assertions.assertEquals(OAuth2AccessToken.TokenType.BEARER, accessToken.getTokenType()); |
|
|
|
assertThat(accessToken.getTokenType()).isEqualTo(OAuth2AccessToken.TokenType.BEARER); |
|
|
|
Set<String> scopes = accessToken.getScopes(); |
|
|
|
Set<String> scopes = accessToken.getScopes(); |
|
|
|
Assertions.assertNotNull(scopes); |
|
|
|
assertThat(scopes).isNotNull(); |
|
|
|
Assertions.assertEquals(0, scopes.size()); |
|
|
|
assertThat(scopes.size()).isEqualTo(0); |
|
|
|
Assertions.assertEquals(1, |
|
|
|
assertThat(Duration.between(accessToken.getIssuedAt(), accessToken.getExpiresAt()).getSeconds()).isEqualTo(1); |
|
|
|
Duration.between(accessToken.getIssuedAt(), accessToken.getExpiresAt()).getSeconds()); |
|
|
|
|
|
|
|
OAuth2RefreshToken refreshToken = converted.getRefreshToken(); |
|
|
|
OAuth2RefreshToken refreshToken = converted.getRefreshToken(); |
|
|
|
Assertions.assertNull(refreshToken); |
|
|
|
assertThat(refreshToken).isNull(); |
|
|
|
Map<String, Object> additionalParameters = converted.getAdditionalParameters(); |
|
|
|
Map<String, Object> additionalParameters = converted.getAdditionalParameters(); |
|
|
|
Assertions.assertNotNull(additionalParameters); |
|
|
|
assertThat(additionalParameters).isNotNull(); |
|
|
|
Assertions.assertEquals(0, additionalParameters.size()); |
|
|
|
assertThat(additionalParameters.size()).isEqualTo(0); |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
// gh-9685
|
|
|
|
// gh-9685
|
|
|
|
@ -130,11 +129,11 @@ public class DefaultMapOAuth2AccessTokenResponseConverterTests { |
|
|
|
map.put("expires_in", 3600); |
|
|
|
map.put("expires_in", 3600); |
|
|
|
OAuth2AccessTokenResponse converted = this.messageConverter.convert(map); |
|
|
|
OAuth2AccessTokenResponse converted = this.messageConverter.convert(map); |
|
|
|
OAuth2AccessToken accessToken = converted.getAccessToken(); |
|
|
|
OAuth2AccessToken accessToken = converted.getAccessToken(); |
|
|
|
Assertions.assertNotNull(accessToken); |
|
|
|
assertThat(accessToken).isNotNull(); |
|
|
|
Assertions.assertEquals("access-token-1234", accessToken.getTokenValue()); |
|
|
|
assertThat(accessToken.getTokenValue()).isEqualTo("access-token-1234"); |
|
|
|
Assertions.assertEquals(OAuth2AccessToken.TokenType.BEARER, accessToken.getTokenType()); |
|
|
|
assertThat(accessToken.getTokenType()).isEqualTo(OAuth2AccessToken.TokenType.BEARER); |
|
|
|
Assertions.assertEquals(3600, |
|
|
|
assertThat(Duration.between(accessToken.getIssuedAt(), accessToken.getExpiresAt()).getSeconds()) |
|
|
|
Duration.between(accessToken.getIssuedAt(), accessToken.getExpiresAt()).getSeconds()); |
|
|
|
.isEqualTo(3600); |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
// gh-9685
|
|
|
|
// gh-9685
|
|
|
|
@ -153,24 +152,24 @@ public class DefaultMapOAuth2AccessTokenResponseConverterTests { |
|
|
|
map.put("custom_parameter_2", "custom-value-2"); |
|
|
|
map.put("custom_parameter_2", "custom-value-2"); |
|
|
|
OAuth2AccessTokenResponse converted = this.messageConverter.convert(map); |
|
|
|
OAuth2AccessTokenResponse converted = this.messageConverter.convert(map); |
|
|
|
OAuth2AccessToken accessToken = converted.getAccessToken(); |
|
|
|
OAuth2AccessToken accessToken = converted.getAccessToken(); |
|
|
|
Assertions.assertNotNull(accessToken); |
|
|
|
assertThat(accessToken).isNotNull(); |
|
|
|
Assertions.assertEquals("access-token-1234", accessToken.getTokenValue()); |
|
|
|
assertThat(accessToken.getTokenValue()).isEqualTo("access-token-1234"); |
|
|
|
Assertions.assertEquals(OAuth2AccessToken.TokenType.BEARER, accessToken.getTokenType()); |
|
|
|
assertThat(accessToken.getTokenType()).isEqualTo(OAuth2AccessToken.TokenType.BEARER); |
|
|
|
Set<String> scopes = accessToken.getScopes(); |
|
|
|
Set<String> scopes = accessToken.getScopes(); |
|
|
|
Assertions.assertNotNull(scopes); |
|
|
|
assertThat(scopes).isNotNull(); |
|
|
|
Assertions.assertEquals(2, scopes.size()); |
|
|
|
assertThat(scopes.size()).isEqualTo(2); |
|
|
|
Assertions.assertTrue(scopes.contains("read")); |
|
|
|
assertThat(scopes.contains("read")).isTrue(); |
|
|
|
Assertions.assertTrue(scopes.contains("write")); |
|
|
|
assertThat(scopes.contains("write")).isTrue(); |
|
|
|
Assertions.assertEquals(3600, |
|
|
|
assertThat(Duration.between(accessToken.getIssuedAt(), accessToken.getExpiresAt()).getSeconds()) |
|
|
|
Duration.between(accessToken.getIssuedAt(), accessToken.getExpiresAt()).getSeconds()); |
|
|
|
.isEqualTo(3600); |
|
|
|
OAuth2RefreshToken refreshToken = converted.getRefreshToken(); |
|
|
|
OAuth2RefreshToken refreshToken = converted.getRefreshToken(); |
|
|
|
Assertions.assertNotNull(refreshToken); |
|
|
|
assertThat(refreshToken).isNotNull(); |
|
|
|
Assertions.assertEquals("refresh-token-1234", refreshToken.getTokenValue()); |
|
|
|
assertThat(refreshToken.getTokenValue()).isEqualTo("refresh-token-1234"); |
|
|
|
Map<String, Object> additionalParameters = converted.getAdditionalParameters(); |
|
|
|
Map<String, Object> additionalParameters = converted.getAdditionalParameters(); |
|
|
|
Assertions.assertNotNull(additionalParameters); |
|
|
|
assertThat(additionalParameters).isNotNull(); |
|
|
|
Assertions.assertEquals(2, additionalParameters.size()); |
|
|
|
assertThat(additionalParameters.size()).isEqualTo(2); |
|
|
|
Assertions.assertEquals(nestedObject, additionalParameters.get("custom_parameter_1")); |
|
|
|
assertThat(additionalParameters.get("custom_parameter_1")).isEqualTo(nestedObject); |
|
|
|
Assertions.assertEquals("custom-value-2", additionalParameters.get("custom_parameter_2")); |
|
|
|
assertThat(additionalParameters.get("custom_parameter_2")).isEqualTo("custom-value-2"); |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
} |
|
|
|
} |
|
|
|
|