Ejemplo n.º 1
0
        public async Task RequestNoResponseNoHandlerTest()
        {
            var bus     = A.Fake <IServiceBus>();
            var user    = A.Fake <ClaimsPrincipal>();
            var request = A.Fake <IRequest>();
            var service = new DefaultRequestService(new IRequestHandler[0]);

            await Assert.ThrowsAsync <InvalidOperationException>(() =>
            {
                return(service.Request(bus, user, request));
            });
        }
Ejemplo n.º 2
0
        public async Task RequestTest()
        {
            var handler = A.Fake <IRequestHandler>();
            var bus     = A.Fake <IServiceBus>();
            var user    = A.Fake <ClaimsPrincipal>();
            var request = A.Fake <IRequest <int> >();
            var service = new DefaultRequestService(new IRequestHandler[] { handler });

            A.CallTo(() => handler.CanHandle(request)).Returns(true);

            await service.Request(bus, user, request);

            A.CallTo(() => handler.Handle(A <RequestHandlerContext> .Ignored, request)).MustHaveHappened();
        }
Ejemplo n.º 3
0
        public async Task RequestFailedTest()
        {
            var handler = A.Fake <IRequestHandler>();
            var bus     = A.Fake <IServiceBus>();
            var user    = A.Fake <ClaimsPrincipal>();
            var request = A.Fake <IRequest <int> >();
            var service = new DefaultRequestService(new IRequestHandler[] { handler });

            A.CallTo(() => handler.CanHandle(request)).Returns(true);
            A.CallTo(() => handler.Handle(A <RequestHandlerContext> .Ignored, request)).Throws <InvalidOperationException>();

            await Assert.ThrowsAsync <InvalidOperationException>(() =>
            {
                return(service.Request(bus, user, request));
            });
        }
Ejemplo n.º 4
0
        public async Task RequestNoResponseTooManyHandlersTest()
        {
            var handler1 = A.Fake <IRequestHandler>();
            var handler2 = A.Fake <IRequestHandler>();
            var bus      = A.Fake <IServiceBus>();
            var user     = A.Fake <ClaimsPrincipal>();
            var request  = A.Fake <IRequest>();
            var service  = new DefaultRequestService(new IRequestHandler[] { handler1, handler2 });

            A.CallTo(() => handler1.CanHandle(request)).Returns(true);
            A.CallTo(() => handler2.CanHandle(request)).Returns(true);

            await Assert.ThrowsAsync <InvalidOperationException>(() =>
            {
                return(service.Request(bus, user, request));
            });
        }