【发布时间】:2020-03-11 15:06:46
【问题描述】:
我有如下属性:
RuleFor(c => c.foo).GreaterThan(0);
在流利验证的文档中,他们指定如果我不能使用“ShouldHaveValidationErrorFor”方法,我可以使用“验证”方法做出一些断言,但我无法理解这一点
我得到的都是这样的:
public void Should_Have_Error_When_Foo_Isnt_Greater_Than_Zero()
{
var bar = new Bar
{
Foo = -1
};
var result = validator.TestValidate(bar);
//Assert.True(bar.Foo > 0, ??)
}
【问题讨论】:
-
你的意思是像
result.ShouldHaveValidationErrorFor(x => x.Foo);? -
但是这样做可以确保属性失败,因为 Foo 不大于零?
-
ShouldHaveValidationErrorFor方法的名称非常明确,你认为它有什么作用?
标签: c# unit-testing validation fluentvalidation