INT-3573: Fix EEvalSplitter for Iterator
JIRA: https://jira.spring.io/browse/INT-3573 Fix `seen` `Queue` `NPE` for `(S)FtpInboundRemoteFileSystemSynchronizerTests`: https://build.spring.io/browse/INT-B41-JOB1-164/test/case/155357717 **Cherry-pick to 4.0.x**
This commit is contained in:
@@ -21,4 +21,6 @@
|
||||
|
||||
<beans:bean id="testBean" class="org.springframework.integration.splitter.SpelSplitterIntegrationTests$TestBean"/>
|
||||
|
||||
<splitter input-channel="spelIteratorInput" expression="@testBean.splitIterator(payload)" output-channel="output"/>
|
||||
|
||||
</beans:beans>
|
||||
|
||||
@@ -56,6 +56,9 @@ public class SpelSplitterIntegrationTests {
|
||||
@Autowired
|
||||
private MessageChannel iteratorInput;
|
||||
|
||||
@Autowired
|
||||
private MessageChannel spelIteratorInput;
|
||||
|
||||
@Autowired
|
||||
private PollableChannel output;
|
||||
|
||||
@@ -127,6 +130,28 @@ public class SpelSplitterIntegrationTests {
|
||||
assertNull(output.receive(0));
|
||||
}
|
||||
|
||||
@Test
|
||||
public void spelIteratorSplitter() {
|
||||
this.spelIteratorInput.send(new GenericMessage<String>("a,b,c,d"));
|
||||
Message<?> a = output.receive(0);
|
||||
Message<?> b = output.receive(0);
|
||||
Message<?> c = output.receive(0);
|
||||
Message<?> d = output.receive(0);
|
||||
assertEquals("a", a.getPayload());
|
||||
assertEquals(new Integer(1), new IntegrationMessageHeaderAccessor(a).getSequenceNumber());
|
||||
assertEquals(new Integer(0), new IntegrationMessageHeaderAccessor(a).getSequenceSize());
|
||||
assertEquals("b", b.getPayload());
|
||||
assertEquals(new Integer(2), new IntegrationMessageHeaderAccessor(b).getSequenceNumber());
|
||||
assertEquals(new Integer(0), new IntegrationMessageHeaderAccessor(b).getSequenceSize());
|
||||
assertEquals("c", c.getPayload());
|
||||
assertEquals(new Integer(3), new IntegrationMessageHeaderAccessor(c).getSequenceNumber());
|
||||
assertEquals(new Integer(0), new IntegrationMessageHeaderAccessor(c).getSequenceSize());
|
||||
assertEquals("d", d.getPayload());
|
||||
assertEquals(new Integer(4), new IntegrationMessageHeaderAccessor(d).getSequenceNumber());
|
||||
assertEquals(new Integer(0), new IntegrationMessageHeaderAccessor(d).getSequenceSize());
|
||||
assertNull(output.receive(0));
|
||||
}
|
||||
|
||||
|
||||
static class TestBean {
|
||||
|
||||
|
||||
Reference in New Issue
Block a user