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);
        }
示例#2
0
        public void SimplestStaticRoutingCallShouldWork()
        {
            //Arrange
            var processor       = Substitute.For <ISomeApiProcessor>();
            var routingProvider = RoutingTestEnvironment.GetStaticNamesRoutingProvider(processor);
            var dto             = RoutingTestEnvironment.GetTestDtoData();

            //Act
            routingProvider.RouteObject(new object(), dto);


            //Assert
            processor.Received().OnSomeDto(dto);
        }
示例#3
0
        public void RoutingObjectShouldBeForAllProcessorsByDefault()
        {
            //Arrange
            var processor       = Substitute.For <ISomeApiProcessor>();
            var processor2      = Substitute.For <ISomeApiProcessor>();
            var routingProvider = RoutingTestEnvironment.GetStaticNamesRoutingProvider(processor, processor2);

            var dto = RoutingTestEnvironment.GetTestDtoData();

            //Act
            routingProvider.RouteObject(new object(), dto);

            //Assert
            processor.Received().OnSomeDto(dto);
            processor2.Received().OnSomeDto(dto);
        }
        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);
        }