public async Task Override() { var api = new CheckPathCounter(); (await api.CheckPathAsync(new CheckPathRequestDto())).Should().BeSuccess(); api.Count.Should().Be(1); }
public async Task Forward() { var inner = new CheckPathCounter(); var api = new DelegatingConformanceApi(ServiceDelegators.Forward(inner)); (await api.CheckPathAsync(new CheckPathRequestDto())).Should().BeSuccess(); inner.Count.Should().Be(1); }
public async Task CallTwice() { var inner = new CheckPathCounter(); var api = new DelegatingConformanceApi( async(method, request, cancellationToken) => { await method.InvokeAsync(inner, request, cancellationToken); return(await method.InvokeAsync(inner, request, cancellationToken)); }); (await api.CheckPathAsync(new CheckPathRequestDto())).Should().BeSuccess(); inner.Count.Should().Be(2); }