public void IsValidWhen_DisplayName_IsNotEmpty() { var command = new UpdateMyNameCommand { DisplayName = "Adam West" }; var validator = new UpdateMyNameValidator(null); var results = validator.Validate(command); var error = results.Errors.SingleOrDefault(e => e.PropertyName == "DisplayName"); error.ShouldBeNull(); }
public void IsInvalidWhen_DisplayName_IsWhiteSpace() { var command = new UpdateMyNameCommand { DisplayName = "\t" }; var validator = new UpdateMyNameValidator(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 IsInvalidWhen_Principal_IsNull() { var command = new UpdateMyNameCommand { Principal = null, }; var validator = new UpdateMyNameValidator(null); var results = validator.Validate(command); results.IsValid.ShouldBeFalse(); results.Errors.Count.ShouldBeInRange(1, int.MaxValue); var error = results.Errors.SingleOrDefault(e => e.PropertyName == "Principal"); error.ShouldNotBeNull(); // ReSharper disable PossibleNullReferenceException error.ErrorMessage.ShouldEqual(ValidatePrincipal.FailedBecausePrincipalWasNull); // ReSharper restore PossibleNullReferenceException }
public void IsValidWhen_PrincipalIdentityName_MatchesUser() { const string principalIdentityName = "*****@*****.**"; var principal = principalIdentityName.AsPrincipal(); var command = new UpdateMyNameCommand { Principal = principal, }; var user = new User { Name = principal.Identity.Name, }; var entities = new Mock<ICommandEntities>(MockBehavior.Strict).Initialize(); entities.Setup(m => m.Query<User>()).Returns(new[] { user }.AsQueryable); var validator = new UpdateMyNameValidator(entities.Object); var results = validator.Validate(command); var error = results.Errors.SingleOrDefault(e => e.PropertyName == "Principal"); error.ShouldBeNull(); }
public void IsInvalidWhen_PrincipalIdentityName_DoesNotMatchUser() { const string principalIdentityName = "*****@*****.**"; var principal = principalIdentityName.AsPrincipal(); var command = new UpdateMyNameCommand { Principal = principal, }; var entities = new Mock<ICommandEntities>(MockBehavior.Strict).Initialize(); entities.Setup(m => m.Query<User>()).Returns(new User[] { }.AsQueryable); var validator = new UpdateMyNameValidator(entities.Object); var results = validator.Validate(command); results.IsValid.ShouldBeFalse(); results.Errors.Count.ShouldBeInRange(1, int.MaxValue); var error = results.Errors.SingleOrDefault(e => e.PropertyName == "Principal"); error.ShouldNotBeNull(); // ReSharper disable PossibleNullReferenceException error.ErrorMessage.ShouldEqual(string.Format( ValidatePrincipal.FailedBecauseIdentityNameMatchedNoUser, command.Principal.Identity.Name)); // ReSharper restore PossibleNullReferenceException }