1
LLBLGEN을 사용하여 생성 된 도메인 모델이 있으며, fluentvalidation.TestHelper 기능을 사용하여 도메인 계층에서 생성 된 유효성 검사 규칙의 유효성을 검사했습니다.유창한 유효성 검사기 유효성 검사기가 도메인 계층에 생성 된 사용자 정의 규칙을 무시합니다.
내 검증의 예는 다음과 같습니다
public partial class MyClassValidator : AbstractValidator<MyClass>
{
public MyClassValidator()
{
RuleFor(x => x.MyObjMoneyValue)
.NotEmpty()
.WithName("MyObjMoneyValue")
.WithState(x => NewFluentCustomState(x));
CustomRules();
}
}
그래서 난 부분 클래스가 생성 된 규칙입니다 LLBLGEN에 의해 생성이 arent 규칙의 사용자 지정 설정을 데이터베이스에 기반하지 않는 사용자 정의 규칙을 작성할 수 있습니다 (즉, null이 아님).
public partial class MyClassValidator
{
private void CustomRules()
{
RuleFor(q => q.MyObjMoneyValue)
.GreaterThan(0)
.WithMessage("Value must be greater than 0")
.WithState(NewFluentCustomState);
내가이 경우 테스트하는 시험이 있습니다 그러나
_validator.ShouldHaveValidationErrorFor(q => q.MyObjMoneyValue, 0);
를,이 사용자 정의 규칙을 테스트하는 데 실패 .. 어떤 생각 내가 어떻게 사용자 정의 규칙을 테스트 할 수있는 방법?
감사