public void CanMapInputToJwtRequestObject() { var tokenRequest = new TokenRequestObject { Consumer = _faker.Random.String(), ConsumerType = _faker.Random.Int(5), ExpiresAt = _faker.Date.Future() }; var id = _faker.Random.Number(0, 20); var factoryResponse = GenerateJwtFactory.ToJwtRequest(tokenRequest, id); factoryResponse.Id.Should().Be(id); factoryResponse.ConsumerName.Should().Be(tokenRequest.Consumer); factoryResponse.ConsumerType.Should().Be(tokenRequest.ConsumerType); factoryResponse.ExpiresAt.Should().Be(tokenRequest.ExpiresAt); }
public GenerateTokenResponse Execute(TokenRequestObject tokenRequest) { var tokenId = _gateway.GenerateToken(tokenRequest); if (tokenId != 0) { var jwtToken = _generateJwtUseCase.GenerateJwtToken(GenerateJwtFactory.ToJwtRequest(tokenRequest, tokenId)); if (!string.IsNullOrEmpty(jwtToken)) { return(new GenerateTokenResponse { Id = tokenId, Token = jwtToken, ExpiresAt = tokenRequest.ExpiresAt, GeneratedAt = DateTime.Now }); } //TODO add logic to revert inserted record or update inserted record to reflect that JWT has not been generated throw new JwtTokenNotGeneratedException(); } throw new TokenNotInsertedException(); }