Example #1
0
        public async Task Override()
        {
            var api = new CheckPathCounter();

            (await api.CheckPathAsync(new CheckPathRequestDto())).Should().BeSuccess();
            api.Count.Should().Be(1);
        }
Example #2
0
        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);
        }
Example #3
0
        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);
        }