use of com.nexblocks.authguard.dal.cache.AccountTokensRepository in project AuthGuard by AuthGuard.
the class AuthorizationCodeVerifierTest method expiredToken.
@Test
void expiredToken() {
final AccountTokensRepository accountTokensRepository = Mockito.mock(AccountTokensRepository.class);
final AuthorizationCodeVerifier authorizationCodeVerifier = new AuthorizationCodeVerifier(accountTokensRepository);
final String accountId = "account-id";
final String authorizationCode = "authorization-code";
final AccountTokenDO accountToken = AccountTokenDO.builder().expiresAt(OffsetDateTime.now().minus(Duration.ofMinutes(5))).associatedAccountId(accountId).token(authorizationCode).build();
Mockito.when(accountTokensRepository.getByToken(authorizationCode)).thenReturn(CompletableFuture.completedFuture(Optional.of(accountToken)));
assertThatThrownBy(() -> authorizationCodeVerifier.verifyAccountToken(authorizationCode)).isInstanceOf(ServiceAuthorizationException.class);
}
use of com.nexblocks.authguard.dal.cache.AccountTokensRepository in project AuthGuard by AuthGuard.
the class CredentialsServiceImplTest method setup.
@BeforeEach
void setup() {
accountsService = Mockito.mock(AccountsService.class);
idempotencyService = Mockito.mock(IdempotencyService.class);
credentialsRepository = Mockito.mock(CredentialsRepository.class);
credentialsAuditRepository = Mockito.mock(CredentialsAuditRepository.class);
accountTokensRepository = Mockito.mock(AccountTokensRepository.class);
securePassword = Mockito.mock(SecurePassword.class);
securePasswordProvider = Mockito.mock(SecurePasswordProvider.class);
messageBus = Mockito.mock(MessageBus.class);
serviceMapper = new ServiceMapperImpl();
Mockito.when(securePasswordProvider.get()).thenReturn(securePassword);
Mockito.when(securePasswordProvider.getCurrentVersion()).thenReturn(1);
final PasswordValidator passwordValidator = new PasswordValidator(PasswordsConfig.builder().conditions(PasswordConditions.builder().build()).build());
credentialsService = new CredentialsServiceImpl(accountsService, idempotencyService, credentialsRepository, credentialsAuditRepository, accountTokensRepository, securePasswordProvider, passwordValidator, messageBus, serviceMapper);
Mockito.when(accountsService.getById(any())).thenReturn(Optional.of(RANDOM.nextObject(AccountBO.class)));
}
use of com.nexblocks.authguard.dal.cache.AccountTokensRepository in project AuthGuard by AuthGuard.
the class AccessTokenProviderTest method newProviderInstance.
private AccessTokenProvider newProviderInstance(final JwtConfig jwtConfig, final StrategyConfig strategyConfig) {
jtiProvider = Mockito.mock(JtiProvider.class);
accountTokensRepository = Mockito.mock(AccountTokensRepository.class);
tokenEncryptor = Mockito.mock(TokenEncryptorAdapter.class);
Mockito.when(accountTokensRepository.save(Mockito.any())).thenAnswer(invocation -> {
final AccountTokenDO arg = invocation.getArgument(0);
return CompletableFuture.completedFuture(arg);
});
return new AccessTokenProvider(accountTokensRepository, jwtConfig, strategyConfig, jtiProvider, tokenEncryptor, new ServiceMapperImpl());
}
use of com.nexblocks.authguard.dal.cache.AccountTokensRepository in project AuthGuard by AuthGuard.
the class VerificationSubscriberTest method setup.
@BeforeEach
void setup() {
emailProvider = Mockito.mock(EmailProvider.class);
accountTokensRepository = Mockito.mock(AccountTokensRepository.class);
final ConfigContext configContext = Mockito.mock(ConfigContext.class);
final ImmutableVerificationConfig verificationConfig = ImmutableVerificationConfig.builder().emailVerificationLife("1d").build();
Mockito.when(configContext.asConfigBean(ImmutableVerificationConfig.class)).thenReturn(verificationConfig);
verificationSubscriber = new VerificationSubscriber(emailProvider, accountTokensRepository, configContext);
}
use of com.nexblocks.authguard.dal.cache.AccountTokensRepository in project AuthGuard by AuthGuard.
the class AuthorizationCodeProviderTest method generateToken.
@Test
void generateToken() {
final AccountTokensRepository accountTokensRepository = Mockito.mock(AccountTokensRepository.class);
final AuthorizationCodeProvider authorizationCodeProvider = new AuthorizationCodeProvider(accountTokensRepository, new ServiceMapperImpl(), config());
final AccountBO account = AccountBO.builder().id("account-id").build();
final AuthResponseBO tokens = authorizationCodeProvider.generateToken(account);
assertThat(tokens.getType()).isEqualTo("authorizationCode");
assertThat(tokens.getToken()).isNotNull();
assertThat(tokens.getRefreshToken()).isNull();
final ArgumentCaptor<AccountTokenDO> argCaptor = ArgumentCaptor.forClass(AccountTokenDO.class);
Mockito.verify(accountTokensRepository, Mockito.times(1)).save(argCaptor.capture());
assertThat(argCaptor.getValue().getToken()).isEqualTo(tokens.getToken());
assertThat(argCaptor.getValue().getAssociatedAccountId()).isEqualTo(account.getId());
assertThat(argCaptor.getValue().getExpiresAt()).isAfter(OffsetDateTime.now()).isBefore(OffsetDateTime.now().plus(Duration.ofMinutes(6)));
}
Aggregations