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)); }); }
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(); }
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)); }); }
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)); }); }