@Test public void targetOnly() { String beanName = "outboundWithImplicitChannel"; Object channel = this.applicationContext.getBean(beanName); assertTrue(channel instanceof DirectChannel); BeanFactoryChannelResolver channelResolver = new BeanFactoryChannelResolver(this.applicationContext); assertNotNull(channelResolver.resolveDestination(beanName)); Object adapter = this.applicationContext.getBean(beanName + ".adapter"); assertNotNull(adapter); assertTrue(adapter instanceof EventDrivenConsumer); assertFalse(((EventDrivenConsumer) adapter).isAutoStartup()); assertEquals(-1, ((EventDrivenConsumer) adapter).getPhase()); TestConsumer consumer = (TestConsumer) this.applicationContext.getBean("consumer"); assertNull(consumer.getLastMessage()); Message<?> message = new GenericMessage<String>("test"); try { ((MessageChannel) channel).send(message); fail("MessageDispatchingException is expected."); } catch (Exception e) { assertThat(e, Matchers.instanceOf(MessageDeliveryException.class)); assertThat(e.getCause(), Matchers.instanceOf(MessageDispatchingException.class)); } ((EventDrivenConsumer) adapter).start(); ((MessageChannel) channel).send(message); assertNotNull(consumer.getLastMessage()); assertEquals(message, consumer.getLastMessage()); }
assertThat(this.s3OutboundChannelAdapter.isAutoStartup()).isFalse(); assertThat(this.s3OutboundChannelAdapter.isRunning()).isFalse(); assertThat(TestUtils.getPropertyValue(this.s3OutboundChannelAdapter, "inputChannel"))
.isEqualTo("foo"); assertThat(this.sqsOutboundChannelAdapter.getPhase()).isEqualTo(100); assertThat(this.sqsOutboundChannelAdapter.isAutoStartup()).isFalse(); assertThat(this.sqsOutboundChannelAdapter.isRunning()).isFalse(); assertThat(TestUtils.getPropertyValue(this.sqsOutboundChannelAdapter, "inputChannel"))