public void IsInvalidWhen_UserName_MatchesExistingUser() { const string userName = "******"; const string userDisplayName = "Bruce Wayne"; const string personDisplayName = "Adam West"; var command = new CreatePersonCommand { DisplayName = personDisplayName, UserName = userName, }; var queryProcessor = new Mock <IProcessQueries>(MockBehavior.Strict); queryProcessor.Setup(m => m.Execute(It.Is <GetUserByNameQuery>(q => q.Name == command.UserName))) .Returns(new User { Person = new Person { DisplayName = userDisplayName, } }); var validator = new CreatePersonValidator(queryProcessor.Object); var results = validator.Validate(command); results.IsValid.ShouldBeFalse(); results.Errors.Count.ShouldBeInRange(1, int.MaxValue); var error = results.Errors.SingleOrDefault(e => e.PropertyName == "UserName"); error.ShouldNotBeNull(); // ReSharper disable PossibleNullReferenceException error.ErrorMessage.ShouldEqual(string.Format( ValidateUser.FailedBecauseNameMatchedEntity, userName)); // ReSharper restore PossibleNullReferenceException }
public void IsValidWhen_DisplayName_IsNotEmpty() { var command = new CreatePersonCommand { DisplayName = "Adam West" }; var validator = new CreatePersonValidator(null); var results = validator.Validate(command); var error = results.Errors.SingleOrDefault(e => e.PropertyName == "DisplayName"); error.ShouldBeNull(); }
public void IsValidWhen_UserName_IsWhiteSpace() { const string personDisplayName = "Adam West"; var command = new CreatePersonCommand { DisplayName = personDisplayName, UserName = "******", }; var validator = new CreatePersonValidator(null); var results = validator.Validate(command); var error = results.Errors.SingleOrDefault(e => e.PropertyName == "UserName"); error.ShouldBeNull(); }
public void IsInvalidWhen_DisplayName_IsWhiteSpace() { var command = new CreatePersonCommand { DisplayName = " " }; var validator = new CreatePersonValidator(null); var results = validator.Validate(command); results.IsValid.ShouldBeFalse(); results.Errors.Count.ShouldBeInRange(1, int.MaxValue); var error = results.Errors.SingleOrDefault(e => e.PropertyName == "DisplayName"); error.ShouldNotBeNull(); // ReSharper disable PossibleNullReferenceException error.ErrorMessage.ShouldEqual(ValidatePerson.FailedBecauseDisplayNameWasEmpty); // ReSharper restore PossibleNullReferenceException }
public void IsValidWhen_UserName_DoesNotMatchExistingUser() { const string userName = "******"; const string personDisplayName = "Adam West"; var command = new CreatePersonCommand { DisplayName = personDisplayName, UserName = userName, }; var queryProcessor = new Mock <IProcessQueries>(MockBehavior.Strict); queryProcessor.Setup(m => m.Execute(It.Is <GetUserByNameQuery>(q => q.Name == command.UserName))) .Returns(null as User); var validator = new CreatePersonValidator(queryProcessor.Object); var results = validator.Validate(command); var error = results.Errors.SingleOrDefault(e => e.PropertyName == "UserName"); error.ShouldBeNull(); }