|
@@ -22,6 +22,7 @@ import java.sql.SQLException;
|
|
|
import java.sql.Timestamp;
|
|
|
import java.sql.Types;
|
|
|
import java.time.Instant;
|
|
|
+import java.time.temporal.ChronoUnit;
|
|
|
import java.util.Collections;
|
|
|
import java.util.List;
|
|
|
import java.util.Set;
|
|
@@ -55,6 +56,7 @@ import org.springframework.util.StringUtils;
|
|
|
import static org.assertj.core.api.Assertions.assertThat;
|
|
|
import static org.assertj.core.api.Assertions.assertThatExceptionOfType;
|
|
|
import static org.assertj.core.api.Assertions.assertThatIllegalArgumentException;
|
|
|
+import static org.assertj.core.api.Assertions.within;
|
|
|
import static org.mockito.ArgumentMatchers.any;
|
|
|
import static org.mockito.ArgumentMatchers.anyInt;
|
|
|
import static org.mockito.BDDMockito.given;
|
|
@@ -174,14 +176,15 @@ public class JdbcOAuth2AuthorizedClientServiceTests {
|
|
|
.isEqualTo(expected.getAccessToken().getTokenType());
|
|
|
assertThat(authorizedClient.getAccessToken().getTokenValue())
|
|
|
.isEqualTo(expected.getAccessToken().getTokenValue());
|
|
|
- assertThat(authorizedClient.getAccessToken().getIssuedAt()).isEqualTo(expected.getAccessToken().getIssuedAt());
|
|
|
- assertThat(authorizedClient.getAccessToken().getExpiresAt())
|
|
|
- .isEqualTo(expected.getAccessToken().getExpiresAt());
|
|
|
+ assertThat(authorizedClient.getAccessToken().getIssuedAt()).isCloseTo(expected.getAccessToken().getIssuedAt(),
|
|
|
+ within(1, ChronoUnit.MILLIS));
|
|
|
+ assertThat(authorizedClient.getAccessToken().getExpiresAt()).isCloseTo(expected.getAccessToken().getExpiresAt(),
|
|
|
+ within(1, ChronoUnit.MILLIS));
|
|
|
assertThat(authorizedClient.getAccessToken().getScopes()).isEqualTo(expected.getAccessToken().getScopes());
|
|
|
assertThat(authorizedClient.getRefreshToken().getTokenValue())
|
|
|
.isEqualTo(expected.getRefreshToken().getTokenValue());
|
|
|
- assertThat(authorizedClient.getRefreshToken().getIssuedAt())
|
|
|
- .isEqualTo(expected.getRefreshToken().getIssuedAt());
|
|
|
+ assertThat(authorizedClient.getRefreshToken().getIssuedAt()).isCloseTo(expected.getRefreshToken().getIssuedAt(),
|
|
|
+ within(1, ChronoUnit.MILLIS));
|
|
|
}
|
|
|
|
|
|
@Test
|
|
@@ -228,14 +231,15 @@ public class JdbcOAuth2AuthorizedClientServiceTests {
|
|
|
.isEqualTo(expected.getAccessToken().getTokenType());
|
|
|
assertThat(authorizedClient.getAccessToken().getTokenValue())
|
|
|
.isEqualTo(expected.getAccessToken().getTokenValue());
|
|
|
- assertThat(authorizedClient.getAccessToken().getIssuedAt()).isEqualTo(expected.getAccessToken().getIssuedAt());
|
|
|
- assertThat(authorizedClient.getAccessToken().getExpiresAt())
|
|
|
- .isEqualTo(expected.getAccessToken().getExpiresAt());
|
|
|
+ assertThat(authorizedClient.getAccessToken().getIssuedAt()).isCloseTo(expected.getAccessToken().getIssuedAt(),
|
|
|
+ within(1, ChronoUnit.MILLIS));
|
|
|
+ assertThat(authorizedClient.getAccessToken().getExpiresAt()).isCloseTo(expected.getAccessToken().getExpiresAt(),
|
|
|
+ within(1, ChronoUnit.MILLIS));
|
|
|
assertThat(authorizedClient.getAccessToken().getScopes()).isEqualTo(expected.getAccessToken().getScopes());
|
|
|
assertThat(authorizedClient.getRefreshToken().getTokenValue())
|
|
|
.isEqualTo(expected.getRefreshToken().getTokenValue());
|
|
|
- assertThat(authorizedClient.getRefreshToken().getIssuedAt())
|
|
|
- .isEqualTo(expected.getRefreshToken().getIssuedAt());
|
|
|
+ assertThat(authorizedClient.getRefreshToken().getIssuedAt()).isCloseTo(expected.getRefreshToken().getIssuedAt(),
|
|
|
+ within(1, ChronoUnit.MILLIS));
|
|
|
// Test save/load of NOT NULL attributes only
|
|
|
principal = createPrincipal();
|
|
|
expected = createAuthorizedClient(principal, this.clientRegistration, true);
|
|
@@ -249,9 +253,10 @@ public class JdbcOAuth2AuthorizedClientServiceTests {
|
|
|
.isEqualTo(expected.getAccessToken().getTokenType());
|
|
|
assertThat(authorizedClient.getAccessToken().getTokenValue())
|
|
|
.isEqualTo(expected.getAccessToken().getTokenValue());
|
|
|
- assertThat(authorizedClient.getAccessToken().getIssuedAt()).isEqualTo(expected.getAccessToken().getIssuedAt());
|
|
|
- assertThat(authorizedClient.getAccessToken().getExpiresAt())
|
|
|
- .isEqualTo(expected.getAccessToken().getExpiresAt());
|
|
|
+ assertThat(authorizedClient.getAccessToken().getIssuedAt()).isCloseTo(expected.getAccessToken().getIssuedAt(),
|
|
|
+ within(1, ChronoUnit.MILLIS));
|
|
|
+ assertThat(authorizedClient.getAccessToken().getExpiresAt()).isCloseTo(expected.getAccessToken().getExpiresAt(),
|
|
|
+ within(1, ChronoUnit.MILLIS));
|
|
|
assertThat(authorizedClient.getAccessToken().getScopes()).isEmpty();
|
|
|
assertThat(authorizedClient.getRefreshToken()).isNull();
|
|
|
}
|
|
@@ -275,14 +280,15 @@ public class JdbcOAuth2AuthorizedClientServiceTests {
|
|
|
.isEqualTo(updatedClient.getAccessToken().getTokenType());
|
|
|
assertThat(savedClient.getAccessToken().getTokenValue())
|
|
|
.isEqualTo(updatedClient.getAccessToken().getTokenValue());
|
|
|
- assertThat(savedClient.getAccessToken().getIssuedAt()).isEqualTo(updatedClient.getAccessToken().getIssuedAt());
|
|
|
- assertThat(savedClient.getAccessToken().getExpiresAt())
|
|
|
- .isEqualTo(updatedClient.getAccessToken().getExpiresAt());
|
|
|
+ assertThat(savedClient.getAccessToken().getIssuedAt()).isCloseTo(updatedClient.getAccessToken().getIssuedAt(),
|
|
|
+ within(1, ChronoUnit.MILLIS));
|
|
|
+ assertThat(savedClient.getAccessToken().getExpiresAt()).isCloseTo(updatedClient.getAccessToken().getExpiresAt(),
|
|
|
+ within(1, ChronoUnit.MILLIS));
|
|
|
assertThat(savedClient.getAccessToken().getScopes()).isEqualTo(updatedClient.getAccessToken().getScopes());
|
|
|
assertThat(savedClient.getRefreshToken().getTokenValue())
|
|
|
.isEqualTo(updatedClient.getRefreshToken().getTokenValue());
|
|
|
- assertThat(savedClient.getRefreshToken().getIssuedAt())
|
|
|
- .isEqualTo(updatedClient.getRefreshToken().getIssuedAt());
|
|
|
+ assertThat(savedClient.getRefreshToken().getIssuedAt()).isCloseTo(updatedClient.getRefreshToken().getIssuedAt(),
|
|
|
+ within(1, ChronoUnit.MILLIS));
|
|
|
}
|
|
|
|
|
|
@Test
|