public async Task RefreshToken() { var user = fillTestDbHelper.Users.FirstOrDefault(); var vcode = await verificationCodesService.CreateVerificationCodeAsync(DateTime.UtcNow.ToUnixTime(), user.Id.ToString(), user.Id); var token = await tokensService.PhoneVCodeCreateTokenPairAsync(user.Phones.FirstOrDefault().PhoneNumber, vcode, null); await Assert.ThrowsAsync <InvalidTokenException>(async() => await tokensService.RefreshTokenPairAsync(user.Id, "bad token")); Assert.NotNull(await tokensService.RefreshTokenPairAsync(user.Id, token.RefreshToken)); }
public async Task <Response> CreateResponseAsync() { try { TokenVm token = await tokensService.RefreshTokenPairAsync(request.UserId, request.RefreshToken).ConfigureAwait(false); clientConnection.FileAccessToken = RandomExtensions.NextString(64); return(new TokensResponse( request.RequestId, token.UserId, token.AccessToken, token.RefreshToken, clientConnection.FileAccessToken)); } catch (InvalidTokenException ex) { Logger.WriteLog(ex, request); return(new ResultResponse(request.RequestId, "Invalid tokens.", ErrorCode.InvalidAccessToken)); } }