C # Mock зависимые валидаторы с FluentValidator - PullRequest
0 голосов
/ 23 октября 2019

У меня есть такой валидатор:

RuleFor(a => a.Id)
    .IsRequired()
    .MustBeValidId()
    .MustExistInDatabase<Command, ChangeRequest>(context)
    .DependentRules(() =>
    {
         RuleFor(a => a.Description)
            .IsRequired()

         ...
    });

Я хочу протестировать свойство Description, которое оценивается только в том случае, если свойство Id действительно.

Но дляв целях тестирования это не было бы необходимо.

Этот тест должен пройти:

GetValidator().ShouldNotHaveValidationErrorFor(command => command.Description, "my description");

Но он не проходит, потому что свойство Id не может быть проверено.

Чтобы проверить его, мне нужно создать провайдера InMemory EFCoreсоздайте сущность, чтобы проверить, существует ли она в базе данных, и тогда валидатор Description не потерпит неудачу.

Есть ли способ издеваться над валидатором Id, чтобы я мог легко протестировать зависимые правила?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...