public void should_switch_to_auto_subscription_mode_when_specified()
        {
            var invokerLoader = new SyncMessageHandlerInvokerLoader(new Container());
            var invoker       = invokerLoader.LoadMessageHandlerInvokers(TypeSource.FromType <FakeRoutableHandlerWithAutoSubscriptionMode>()).ExpectedSingle();

            invoker.ShouldBeSubscribedOnStartup.ShouldBeTrue();
        }
        public void should_load_queue_name()
        {
            var invokerLoader = new SyncMessageHandlerInvokerLoader(new Container());
            var invoker       = invokerLoader.LoadMessageHandlerInvokers(TypeSource.FromType <FakeHandlerWithQueueName1>()).ExpectedSingle();

            invoker.DispatchQueueName.ShouldEqual("DispatchQueue1");
        }
        public void should_not_throw_if_scanning_handler_with_several_handle_methods()
        {
            var invokerLoader = new SyncMessageHandlerInvokerLoader(new Container());

            Assert.DoesNotThrow(() => invokerLoader.LoadMessageHandlerInvokers(TypeSource.FromType <FakeHandler>()).ToList());
        }
        public void should_throw_exception_if_method_is_async_void()
        {
            var invokerLoader = new SyncMessageHandlerInvokerLoader(new Container());

            Assert.Throws <InvalidProgramException>(() => invokerLoader.LoadMessageHandlerInvokers(TypeSource.FromType <WrongAsyncHandler>()).ToList());
        }