public async Task Handle_バリデータがnullの場合はそのまま実行される() { var executed = false; var behavior = new FluentValidationBehavior <TestBehaviorRequest, TestBehaviorResponse>( new ServiceFactory(_ => null)); await behavior.Handle( new TestBehaviorRequest(), new CancellationToken(), () => { executed = true; return(Task.FromResult(new TestBehaviorResponse())); }); executed.Should().BeTrue(); }
public async Task Handle_バリデーションが実行されてエラーがない場合は処理が継続する() { var executed = false; var behavior = new FluentValidationBehavior <TestBehaviorRequest, TestBehaviorResponse>( new ServiceFactory(_ => new List <IValidator <TestBehaviorRequest> >() { new Validator1() })); await behavior.Handle( new TestBehaviorRequest() { Name = "A" }, new CancellationToken(), () => { executed = true; return(Task.FromResult(new TestBehaviorResponse())); }); executed.Should().BeTrue(); }
public async Task Handle_バリデーションが実行されてエラーがある場合は例外が発生する() { var executed = false; var behavior = new FluentValidationBehavior <TestBehaviorRequest, TestBehaviorResponse>( new ServiceFactory(_ => new List <IValidator <TestBehaviorRequest> >() { new Validator1() })); Func <Task> act = () => behavior.Handle( new TestBehaviorRequest(), new CancellationToken(), () => { executed = true; return(Task.FromResult(new TestBehaviorResponse())); }); var result = await act.Should().ThrowAsync <ValidationException>(); result.And.Errors.Should().HaveCount(1); executed.Should().BeFalse(); }