示例#1
0
        public void Resolve_should_return_only_handlers_registered_for_message()
        {
            var messageHandlers = new[]
            {
                NSubstitute.Substitute.For <IHandleMessage <StartDummySaga> >(),
                NSubstitute.Substitute.For <IHandleMessage <StartDummySaga> >(),
            };

            var invalidHandlers = new[]
            {
                NSubstitute.Substitute.For <IHandleMessage <DummyEvent> >(),
                NSubstitute.Substitute.For <IHandleMessage <DummyEvent> >(),
            };

            var sp = NSubstitute.Substitute.For <IServiceProvider>();

            sp.GetService(typeof(IEnumerable <IHandleMessage <StartDummySaga> >))
            .Returns(messageHandlers);

            sp.GetService(typeof(IEnumerable <IHandleMessage <DummyEvent> >))
            .Returns(invalidHandlers);

            var sut      = new DefaultMessageHandlersResolver(sp);
            var handlers = sut.Resolve <StartDummySaga>();

            handlers.Should().NotBeNullOrEmpty()
            .And.BeEquivalentTo(messageHandlers);
        }
示例#2
0
        public void Resolve_should_return_empty_collection_when_no_handlers_registered_for_message()
        {
            var sp = NSubstitute.Substitute.For <IServiceProvider>();

            var sut      = new DefaultMessageHandlersResolver(sp);
            var handlers = sut.Resolve <StartDummySaga>();

            handlers.Should().NotBeNull().And.BeEmpty();
        }
示例#3
0
        public void Resolve_should_not_return_sagas()
        {
            var expectedHandler = NSubstitute.Substitute.For <IHandleMessage <StartDummySaga> >();
            var messageHandlers = new[]
            {
                expectedHandler,
                NSubstitute.Substitute.For <DummySaga>(),
            };

            var sp = NSubstitute.Substitute.For <IServiceProvider>();

            sp.GetService(typeof(IEnumerable <IHandleMessage <StartDummySaga> >))
            .Returns(messageHandlers);

            var sut      = new DefaultMessageHandlersResolver(sp);
            var handlers = sut.Resolve <StartDummySaga>();

            handlers.Should().NotBeNullOrEmpty()
            .And.HaveCount(1)
            .And.Contain(expectedHandler);
        }