public void Arrange() { _passwordService = new Mock <IPasswordService>(); _passwordService.Setup(s => s.VerifyAsync(It.IsAny <string>(), It.IsAny <string>(), It.IsAny <string>(), It.IsAny <string>())) .Returns(Task.FromResult(false)); _passwordService.Setup(s => s.VerifyAsync(CurrentPassword, CurrentPasswordHash, Salt, PasswordProfileId)) .Returns(Task.FromResult(true)); _configurationService = new Mock <IConfigurationService>(); _configurationService.Setup(s => s.GetAsync <EmployerUsersConfiguration>()) .ReturnsAsync(new EmployerUsersConfiguration { Account = new AccountConfiguration { NumberOfPasswordsInHistory = 3 } }); _validator = new ChangePasswordCommandValidator(_passwordService.Object, _configurationService.Object); _command = new ChangePasswordCommand { User = new Domain.User { Id = UserId, Password = CurrentPasswordHash, PasswordProfileId = PasswordProfileId, Salt = Salt, PasswordHistory = new Domain.HistoricalPassword[0] }, CurrentPassword = CurrentPassword, NewPassword = NewPassword, ConfirmPassword = NewPassword, }; }
public void Validate_GivenAllPropertiesAreValid_ExpectValidationSuccess() { var cmd = new ChangePasswordCommand("current-password", "new-password"); var validator = new ChangePasswordCommandValidator(); var result = validator.Validate(cmd); Assert.True(result.IsValid); }
public void Validate_GivenAllNewPasswordIsEmpty_ExpectValidationFailure() { var cmd = new ChangePasswordCommand("current-password", string.Empty); var validator = new ChangePasswordCommandValidator(); var result = validator.Validate(cmd); Assert.False(result.IsValid); Assert.Contains( result.Errors, failure => failure.ErrorCode.Equals(ValidationCodes.FieldIsRequired) && failure.PropertyName == "NewPassword"); }
public void Validate_GivenAllCurrentPasswordIsNull_ExpectValidationFailure() { var cmd = new ChangePasswordCommand(null, "new-password"); var validator = new ChangePasswordCommandValidator(); var result = validator.Validate(cmd); Assert.False(result.IsValid); Assert.Contains( result.Errors, failure => failure.ErrorCode.Equals(ValidationCodes.FieldIsRequired) && failure.PropertyName == "CurrentPassword"); }