public async Task RefreshUserToken_ValidUser(RefreshToken expectedResult, UserLoginResponse expectedUserLoginResponse) { //Arrange _userLoginProviderMock.Setup(s => s.GetRefreshToken(It.IsAny <Guid>())).ReturnsAsync(expectedResult); _userLoginProviderMock.Setup(s => s.TokenGenerator(It.IsAny <string>(), It.IsAny <string>(), It.IsAny <double>())).ReturnsAsync(expectedUserLoginResponse); var refreshToken = Guid.NewGuid(); var command = new TokenRefreshCommand(refreshToken); _sut = new TokenRefreshCommandHandler(_userLoginProviderMock.Object, _mediatorHandlerMock.Object, _userProviderMock.Object); //Act var response = await _sut.Handle(command, CancellationToken.None); //Assert response.Payload.Should().NotBeNull(); response.ValidationResult.Should().BeNull(); // response.Payload.RefreshToken.Should().BeEquivalentTo(expectedResult.Token); }
public async Task RefreshUserToken_InvalidRefrehToken() { //Arrange var validationResult = new ValidationResult(); validationResult.Errors.Add(CreateValidationFailure(null, "Invalid token refresh")); var refreshToken = Guid.NewGuid(); _mediatorHandlerMock.Setup(s => s.PublishEvent(It.IsAny <TokenRefreshInvalidEvent>())) .Verifiable("Notification was sent"); var command = new TokenRefreshCommand(refreshToken); _sut = new TokenRefreshCommandHandler(_userLoginProviderMock.Object, _mediatorHandlerMock.Object, _userProviderMock.Object); //Act var response = await _sut.Handle(command, CancellationToken.None); //Assert response.Payload.Should().BeNull(); response.ValidationResult.Errors.Should().HaveCount(1); response.ValidationResult.Errors.Select(s => s.ErrorMessage).Should().Contain(validationResult.Errors.Select(s => s.ErrorMessage)); }