public void SimpleInterfaceBasedRoutingShouldWork() { var processor = Substitute.For <IMessageHandler <SomeDto> >(); var router = RoutingTestEnvironment.GetInterfaceBasedRoutingProvider(processor); var routedObject = RoutingTestEnvironment.GetTestDtoData(); router.RouteObject(null, routedObject); processor.Received().HandleMessage(routedObject); }
public void AsyncHandlingWithContextShouldWork() { var processor = new SomeProcessor(); var router = RoutingTestEnvironment.GetInterfaceBasedRoutingProvider(processor); Func <Task> f = async() => { await router.RouteObjectAsync(processor, string.Empty); }; var throwResult = f.Should().Throw <AggregateException>(); throwResult.WithInnerException <SomeRoutingException>(); }
public void SimpleInterfaceRoutingWithContextShouldWork2() { var processor = Substitute.For <ComplexInterface>(); var router = RoutingTestEnvironment.GetInterfaceBasedRoutingProvider(processor); var routedObject = RoutingTestEnvironment.GetTestDtoData(); var context = new SomeContext(); router.RouteObject(context, routedObject); processor.Received().HandleMessage(context, routedObject); processor.Received().HandleMessage(routedObject); processor.DidNotReceive().HandleMessage(routedObject, routedObject); processor.DidNotReceive().HandleMessage(routedObject, context); processor.DidNotReceive().HandleMessage(context, context); }