@Test public void testMessageHistory() throws Exception { ClassPathXmlApplicationContext ac = new ClassPathXmlApplicationContext("ftp-message-history-context.xml", this.getClass()); SourcePollingChannelAdapter adapter = ac.getBean("adapterFtp", SourcePollingChannelAdapter.class); assertEquals("adapterFtp", adapter.getComponentName()); assertEquals("ftp:inbound-channel-adapter", adapter.getComponentType()); ac.close(); } }
@Test public void testMessageHistoryCompliance() { ClassPathXmlApplicationContext ac = new ClassPathXmlApplicationContext("MessageHistory-context.xml", SftpMessageHistoryTests.class); SourcePollingChannelAdapter spca = ac.getBean("sftpAdapter", SourcePollingChannelAdapter.class); assertEquals("sftpAdapter", spca.getComponentName()); assertEquals("sftp:inbound-channel-adapter", spca.getComponentType()); ac.close(); }
@Test public void testFtpInboundChannelAdapterComplete() throws Exception { assertFalse(TestUtils.getPropertyValue(this.ftpInbound, "autoStartup", Boolean.class)); assertEquals("ftpInbound", this.ftpInbound.getComponentName()); assertEquals("ftp:inbound-streaming-channel-adapter", this.ftpInbound.getComponentType()); assertSame(this.ftpChannel, TestUtils.getPropertyValue(this.ftpInbound, "outputChannel")); FtpStreamingMessageSource source = TestUtils.getPropertyValue(ftpInbound, "source", FtpStreamingMessageSource.class); assertNotNull(TestUtils.getPropertyValue(source, "comparator")); assertThat(TestUtils.getPropertyValue(source, "remoteFileSeparator", String.class), equalTo("X")); FileListFilter<?> filter = TestUtils.getPropertyValue(source, "filter", FileListFilter.class); assertNotNull(filter); assertThat(filter, instanceOf(CompositeFileListFilter.class)); Set<?> fileFilters = TestUtils.getPropertyValue(filter, "fileFilters", Set.class); Iterator<?> filtersIterator = fileFilters.iterator(); assertThat(filtersIterator.next(), instanceOf(FtpSimplePatternFileListFilter.class)); assertThat(filtersIterator.next(), instanceOf(FtpPersistentAcceptOnceFileListFilter.class)); assertSame(this.csf, TestUtils.getPropertyValue(source, "remoteFileTemplate.sessionFactory")); assertEquals(31, TestUtils.getPropertyValue(source, "maxFetchSize")); }
@Test public void testFtpInboundChannelAdapterComplete() throws Exception { assertFalse(TestUtils.getPropertyValue(this.sftpInbound, "autoStartup", Boolean.class)); assertEquals("sftpInbound", this.sftpInbound.getComponentName()); assertEquals("sftp:inbound-streaming-channel-adapter", this.sftpInbound.getComponentType()); assertSame(this.sftpChannel, TestUtils.getPropertyValue(this.sftpInbound, "outputChannel")); SftpStreamingMessageSource source = TestUtils.getPropertyValue(sftpInbound, "source", SftpStreamingMessageSource.class); assertNotNull(TestUtils.getPropertyValue(source, "comparator")); assertThat(TestUtils.getPropertyValue(source, "remoteFileSeparator", String.class), equalTo("X")); FileListFilter<?> filter = TestUtils.getPropertyValue(source, "filter", FileListFilter.class); assertNotNull(filter); assertThat(filter, instanceOf(CompositeFileListFilter.class)); Set<?> fileFilters = TestUtils.getPropertyValue(filter, "fileFilters", Set.class); Iterator<?> filtersIterator = fileFilters.iterator(); assertThat(filtersIterator.next(), instanceOf(SftpSimplePatternFileListFilter.class)); assertThat(filtersIterator.next(), instanceOf(SftpPersistentAcceptOnceFileListFilter.class)); assertSame(this.csf, TestUtils.getPropertyValue(source, "remoteFileTemplate.sessionFactory")); assertEquals(31, TestUtils.getPropertyValue(source, "maxFetchSize")); source = TestUtils.getPropertyValue(this.contextLoadsWithNoComparator, "source", SftpStreamingMessageSource.class); assertThat(TestUtils.getPropertyValue(source, "filter"), instanceOf(ExpressionFileListFilter.class)); }
@Test public void adapterWithDefaultCharset() { ClassPathXmlApplicationContext context = new ClassPathXmlApplicationContext( "consoleInboundChannelAdapterParserTests.xml", ConsoleInboundChannelAdapterParserTests.class); SourcePollingChannelAdapter adapter = context.getBean("adapterWithDefaultCharset.adapter", SourcePollingChannelAdapter.class); MessageSource<?> source = (MessageSource<?>) new DirectFieldAccessor(adapter).getPropertyValue("source"); assertTrue(source instanceof NamedComponent); assertEquals("adapterWithDefaultCharset.adapter", adapter.getComponentName()); assertEquals("stream:stdin-channel-adapter(character)", adapter.getComponentType()); assertEquals("stream:stdin-channel-adapter(character)", ((NamedComponent) source).getComponentType()); DirectFieldAccessor sourceAccessor = new DirectFieldAccessor(source); Reader bufferedReader = (Reader) sourceAccessor.getPropertyValue("reader"); assertEquals(BufferedReader.class, bufferedReader.getClass()); DirectFieldAccessor bufferedReaderAccessor = new DirectFieldAccessor(bufferedReader); Reader reader = (Reader) bufferedReaderAccessor.getPropertyValue("in"); assertEquals(InputStreamReader.class, reader.getClass()); Charset readerCharset = Charset.forName(((InputStreamReader) reader).getEncoding()); assertEquals(Charset.defaultCharset(), readerCharset); Message<?> message = source.receive(); assertNotNull(message); assertEquals("foo", message.getPayload()); adapter = context.getBean("pipedAdapterNoCharset.adapter", SourcePollingChannelAdapter.class); source = adapter.getMessageSource(); assertTrue(TestUtils.getPropertyValue(source, "blockToDetectEOF", Boolean.class)); context.close(); }
assertNotNull(comparator); assertEquals("ftpInbound", ftpInbound.getComponentName()); assertEquals("ftp:inbound-channel-adapter", ftpInbound.getComponentType()); assertEquals(context.getBean("ftpChannel"), TestUtils.getPropertyValue(ftpInbound, "outputChannel")); FtpInboundFileSynchronizingMessageSource inbound =
@Test public void testFtpsInboundChannelAdapterComplete() { assertEquals("ftpInbound", ftpInbound.getComponentName()); assertEquals("ftp:inbound-channel-adapter", ftpInbound.getComponentType()); assertNotNull(TestUtils.getPropertyValue(ftpInbound, "pollingTask")); assertEquals(this.ftpChannel, TestUtils.getPropertyValue(ftpInbound, "outputChannel")); FtpInboundFileSynchronizingMessageSource inbound = (FtpInboundFileSynchronizingMessageSource) TestUtils.getPropertyValue(ftpInbound, "source"); FtpInboundFileSynchronizer fisync = (FtpInboundFileSynchronizer) TestUtils.getPropertyValue(inbound, "synchronizer"); assertNotNull(TestUtils.getPropertyValue(fisync, "filter")); }
@Test public void testMessageHistory() throws URISyntaxException { ClassPathXmlApplicationContext applicationContext = getApplicationContext(); SourcePollingChannelAdapter adapter = applicationContext .getBean("smbInboundChannelAdapter", SourcePollingChannelAdapter.class); assertEquals("smbInboundChannelAdapter", adapter.getComponentName()); assertEquals("smb:inbound-channel-adapter", adapter.getComponentType()); SmbSessionFactory smbSessionFactory = applicationContext.getBean(SmbSessionFactory.class); String url = smbSessionFactory.getUrl(); URI uri = new URI(url); assertEquals("sambagu%40est:sambag%25uest", uri.getRawUserInfo()); assertEquals("sambagu@est:sambag%uest", uri.getUserInfo()); applicationContext.close(); } }
assertThat(this.s3Inbound.getComponentType()).isEqualTo("aws:s3-inbound-streaming-channel-adapter"); assertThat(TestUtils.getPropertyValue(this.s3Inbound, "outputChannel")).isSameAs(this.s3Channel);
assertThat(comparator).isSameAs(this.comparator); assertThat(this.s3Inbound.getComponentName()).isEqualTo("s3Inbound"); assertThat(this.s3Inbound.getComponentType()).isEqualTo("aws:s3-inbound-channel-adapter"); assertThat(TestUtils.getPropertyValue(this.s3Inbound, "outputChannel")).isSameAs(this.s3Channel);
@Test(timeout = 100000) public void testSmbInboundChannelAdapterComplete() { final SourcePollingChannelAdapter adapter = this.applicationContext.getBean("smbInbound", SourcePollingChannelAdapter.class); final PriorityBlockingQueue<?> queue = TestUtils.getPropertyValue(adapter, "source.fileSource.toBeReceived", PriorityBlockingQueue.class); assertNotNull(queue.comparator()); assertEquals("smbInbound", adapter.getComponentName()); assertEquals("smb:inbound-channel-adapter", adapter.getComponentType()); assertEquals(applicationContext.getBean("smbChannel"), TestUtils.getPropertyValue(adapter, "outputChannel")); SmbInboundFileSynchronizingMessageSource inbound = (SmbInboundFileSynchronizingMessageSource) TestUtils.getPropertyValue(adapter, "source"); SmbInboundFileSynchronizer fisync = (SmbInboundFileSynchronizer) TestUtils.getPropertyValue(inbound, "synchronizer"); assertEquals(".working.tmp", TestUtils.getPropertyValue(fisync, "temporaryFileSuffix", String.class)); String remoteFileSeparator = (String) TestUtils.getPropertyValue(fisync, "remoteFileSeparator"); assertNotNull(remoteFileSeparator); assertEquals("", remoteFileSeparator); FileListFilter<?> filter = TestUtils.getPropertyValue(fisync, "filter", FileListFilter.class); assertNotNull(filter); assertThat(filter, instanceOf(CompositeFileListFilter.class)); Set<?> fileFilters = TestUtils.getPropertyValue(filter, "fileFilters", Set.class); Iterator<?> filtersIterator = fileFilters.iterator(); assertThat(filtersIterator.next(), instanceOf(SmbSimplePatternFileListFilter.class)); assertThat(filtersIterator.next(), instanceOf(SmbPersistentAcceptOnceFileListFilter.class)); Object sessionFactory = TestUtils.getPropertyValue(fisync, "remoteFileTemplate.sessionFactory"); assertTrue(SmbSessionFactory.class.isAssignableFrom(sessionFactory.getClass())); FileListFilter<?> acceptAllFilter = this.applicationContext.getBean("acceptAllFilter", FileListFilter.class); assertTrue(TestUtils.getPropertyValue(inbound, "fileSource.scanner.filter.fileFilters", Collection.class) .contains(acceptAllFilter)); }