public void ValidationModelWithDataAnnotationAndShouldBeFailureTest() { var model1 = new GoodJob() { Name = "", Cost = 11 }; var model2 = new GoodJob() { Name = "11111111111", Cost = 11 }; var model3 = new GoodJob() { Name = "Good", Cost = 9 }; var model4 = new GoodJob() { Name = "", Cost = -9 }; var validator = new DataAnnotationValidator(); var r1 = validator.Verify(typeof(GoodJob), model1); var r2 = validator.Verify(typeof(GoodJob), model2); var r3 = validator.Verify(typeof(GoodJob), model3); var r4 = validator.Verify(typeof(GoodJob), model4); r1.IsValid.ShouldBeFalse(); r2.IsValid.ShouldBeFalse(); r3.IsValid.ShouldBeFalse(); r4.IsValid.ShouldBeFalse(); r1.MemberNames.Should().HaveCount(1); r2.MemberNames.Should().HaveCount(1); r3.MemberNames.Should().HaveCount(1); r4.MemberNames.Should().HaveCount(2); }
public void ValidationOneWithDataAnnotationAndShouldBeFailureTest() { var model1 = new GoodJob() { Name = "", Cost = 11 }; var model2 = new GoodJob() { Name = "11111111111", Cost = 11 }; var model3 = new GoodJob() { Name = "Good", Cost = 9 }; var model4 = new GoodJob() { Name = "", Cost = -9 }; var validator = new DataAnnotationValidator(); validator.VerifyOne(typeof(GoodJob), model1.Name, "Name").IsValid.Should().BeFalse(); validator.VerifyOne(typeof(GoodJob), model1.Cost, "Cost").IsValid.Should().BeTrue(); validator.VerifyOne(typeof(GoodJob), model2.Name, "Name").IsValid.Should().BeFalse(); validator.VerifyOne(typeof(GoodJob), model2.Cost, "Cost").IsValid.Should().BeTrue(); validator.VerifyOne(typeof(GoodJob), model3.Name, "Name").IsValid.Should().BeTrue(); validator.VerifyOne(typeof(GoodJob), model3.Cost, "Cost").IsValid.Should().BeFalse(); validator.VerifyOne(typeof(GoodJob), model4.Name, "Name").IsValid.Should().BeFalse(); validator.VerifyOne(typeof(GoodJob), model4.Cost, "Cost").IsValid.Should().BeFalse(); }
public void ValidationModelWithDataAnnotationAndShouldBeSuccessTest() { var model = new GoodJob() { Name = "Good", Cost = 11 }; var validator = new DataAnnotationValidator(); validator.Verify(typeof(GoodJob), model).IsValid.Should().BeTrue(); }
protected void ValidateProperty([CallerMemberName] string propertyName = null) { var value = GetType().GetProperty(propertyName).GetValue(this, null); var results = new List <ValidationResult>(); RemoveError(propertyName); if (!DataAnnotationValidator.ValidateProperty(this, propertyName, value, out results)) { foreach (var validationResult in results) { AddError( validationResult.ErrorMessage, propertyName); } } }
/// <summary> /// Called before client calls are sent and after service responses are returned. /// </summary> /// <param name="operationName">The name of the operation.</param> /// <param name="inputs">The objects passed to the method by the client.</param> /// <returns>The correlation state that is returned as the correlationState parameter in <see cref="AfterCall(string, object[], object, object)"/>. /// Return null if you do not intend to use correlation state.</returns> public object BeforeCall(string operationName, object[] inputs) { InstanceContextServiceScope ctxScope = OperationContext.Current.InstanceContext.Extensions.Find <InstanceContextServiceScope>(); var svcProvider = ctxScope?.GetServiceScope(null)?.ServiceProvider; ErrorList errors = svcProvider?.GetService <ErrorList>(); if (errors == null) { return(null); } foreach (object obj in inputs) { foreach (ValidationResult result in DataAnnotationValidator.GetValidationErrors(serviceProvider, obj)) { errors.AddValidationError(result.ErrorMessage); } } return(null); }