Esempio n. 1
0
            public async Task ShouldRemovePromiseFromMap(
                Response response,
                [Frozen, Substitute] IRequestMap requestMap,
                [Target] DefaultResponseService service
                )
            {
                var promise = new TaskCompletionSource <Response>();

                requestMap.TryGetValue(Any <Guid>(), out Any <TaskCompletionSource <Response> >() !).Returns(x =>
                {
                    x[1] = promise;
                    return(true);
                });

                service.HandleResponse(response);

                var result = await promise.Task;

                result.Should().Be(response);

                requestMap.Received().Remove(Is(response.RequestId));
            }