public void WrappedHandler_DoesHaveExactlyOnce()
        {
            var wrapped = new BlockingHandler<GenericMessage>(new OnceTestHandler());

            var reader = HandlerMetadata.ReadExactlyOnce(wrapped);

            Assert.That(reader.Enabled, Is.True);
        }
Пример #2
0
        public void WrappedHandler_DoesHaveExactlyOnce()
        {
            var wrapped = new BlockingHandler <GenericMessage>(new OnceTestHandler());

            var reader = HandlerMetadata.ReadExactlyOnce(wrapped);

            Assert.That(reader.Enabled, Is.True);
        }
Пример #3
0
        public void WrappedHandler_DoesHaveExactlyOnce()
        {
#pragma warning disable 618
            var wrapped = new BlockingHandler <GenericMessage>(new OnceTestHandler());
#pragma warning restore 618

            var reader = HandlerMetadata.ReadExactlyOnce(wrapped);

            reader.Enabled.ShouldBeTrue();
        }
        public async Task WhenAMessageIsHandled_TheInnerResultTrueIsReturned()
        {
            var inner = Substitute.For<IHandler<OrderAccepted>>();
            inner.Handle(Arg.Any<OrderAccepted>())
                .Returns(true);

            var handler = new BlockingHandler<OrderAccepted>(inner);

            var message = new OrderAccepted();

            var result = await handler.Handle(message);

            Assert.That(result, Is.True);
        }
        public async Task WhenAMessageIsHandled_TheInnerIsCalled()
        {
            var inner = Substitute.For<IHandler<OrderAccepted>>();
            inner.Handle(Arg.Any<OrderAccepted>())
                .Returns(false);

            var handler = new BlockingHandler<OrderAccepted>(inner);

            var message = new OrderAccepted();

            await handler.Handle(message);

            inner.Received().Handle(message);
        }
Пример #6
0
        public async Task WhenAMessageIsHandled_TheInnerResultTrueIsReturned()
        {
            var inner = Substitute.For <IHandler <OrderAccepted> >();

            inner.Handle(Arg.Any <OrderAccepted>())
            .Returns(true);

            var handler = new BlockingHandler <OrderAccepted>(inner);

            var message = new OrderAccepted();

            var result = await handler.Handle(message);

            Assert.That(result, Is.True);
        }
Пример #7
0
        public async Task WhenAMessageIsHandled_TheInnerIsCalled()
        {
            var inner = Substitute.For <IHandler <OrderAccepted> >();

            inner.Handle(Arg.Any <OrderAccepted>())
            .Returns(false);

            var handler = new BlockingHandler <OrderAccepted>(inner);

            var message = new OrderAccepted();

            await handler.Handle(message);

            inner.Received().Handle(message);
        }
Пример #8
0
        public async Task WhenAMessageIsHandled_TheInnerResultFalseIsReturned()
        {
            var inner = Substitute.For <IHandler <OrderAccepted> >();

            inner.Handle(Arg.Any <OrderAccepted>())
            .Returns(false);

            var handler = new BlockingHandler <OrderAccepted>(inner);

            var message = new OrderAccepted();

            var result = await handler.Handle(message);

            result.ShouldBeFalse();
        }
        public void CommandFailed_SendUpstream()
        {
            var root = Substitute.For<IRootContainer>();
            var child = Substitute.For<IScopedContainer>();
            var handler = new BlockingHandler<FakeCommand>(x => { throw new Exception(); });
            root.CreateScope().Returns(child);
            child.Resolve<IHandleCommand<FakeCommand>>().Returns(handler);
            var context = Substitute.For<IDownstreamContext>();
            var dispatcher = new IocDispatcher(root);
            var msg = new DispatchCommand(new FakeCommand());

            dispatcher.HandleDownstream(context, msg);

            context.Received().SendUpstream(Arg.Any<CommandFailed>());
            Assert.Equal(1, msg.Attempts);
        }
        public void CommandFailed_SendUpstream()
        {
            var root    = Substitute.For <IRootContainer>();
            var child   = Substitute.For <IScopedContainer>();
            var handler = new BlockingHandler <FakeCommand>(x => { throw new Exception(); });

            root.CreateScope().Returns(child);
            child.Resolve <IHandleCommand <FakeCommand> >().Returns(handler);
            var context    = Substitute.For <IDownstreamContext>();
            var dispatcher = new IocDispatcher(root);
            var msg        = new DispatchCommand(new FakeCommand());

            dispatcher.HandleDownstream(context, msg);

            context.Received().SendUpstream(Arg.Any <CommandFailed>());
            Assert.Equal(1, msg.Attempts);
        }