@Test public void singleMessage() { Mockito.when(this.channelMock.receive()).thenReturn(this.message); this.endpoint.setMaxMessagesPerPoll(1); this.endpoint.start(); this.trigger.await(); this.endpoint.stop(); assertEquals(1, this.consumer.counter.get()); }
@Test public void multipleMessages() { Mockito.when(this.channelMock.receive()) .thenReturn(this.message, this.message, this.message, this.message, this.message); this.endpoint.setMaxMessagesPerPoll(5); this.endpoint.start(); this.trigger.await(); this.endpoint.stop(); assertEquals(5, this.consumer.counter.get()); }
@Test public void multipleMessages_under_run() { Mockito.when(this.channelMock.receive()) .thenReturn(this.message, this.message, this.message, this.message, this.message, null); this.endpoint.setMaxMessagesPerPoll(6); this.endpoint.start(); this.trigger.await(); this.endpoint.stop(); assertEquals(5, this.consumer.counter.get()); }
@Test public void blockingSourceNotTimedOut() { Mockito.when(this.channelMock.receive(Mockito.eq(1L))).thenReturn(this.message); this.endpoint.setReceiveTimeout(1); this.endpoint.setMaxMessagesPerPoll(1); this.endpoint.start(); this.trigger.await(); this.endpoint.stop(); assertEquals(1, this.consumer.counter.get()); }
@Test(expected = MessageRejectedException.class) public void droppedMessage_onePerPoll() throws Throwable { Mockito.when(this.channelMock.receive()).thenReturn(this.badMessage); this.endpoint.setMaxMessagesPerPoll(10); this.endpoint.start(); this.trigger.await(); this.endpoint.stop(); assertEquals(1, this.consumer.counter.get()); this.errorHandler.throwLastErrorIfAvailable(); }
@Test public void singleNonStringObject() { endpoint.setTrigger(trigger); endpoint.setMaxMessagesPerPoll(1); TestObject testObject = new TestObject("foo"); channel.send(new GenericMessage<TestObject>(testObject)); endpoint.start(); trigger.await(); endpoint.stop(); assertEquals("foo", writer.toString()); }
@Test public void maxMessagesPerTaskSameAsMessageCount() { endpoint.setTrigger(trigger); endpoint.setMaxMessagesPerPoll(2); channel.send(new GenericMessage<String>("foo"), 0); channel.send(new GenericMessage<String>("bar"), 0); endpoint.start(); trigger.await(); endpoint.stop(); assertEquals("foobar", writer.toString()); }
@Test public void maxMessagesPerTaskExceedsMessageCountWithAppendedNewLines() { endpoint.setTrigger(trigger); endpoint.setMaxMessagesPerPoll(10); endpoint.setReceiveTimeout(0); handler.setShouldAppendNewLine(true); channel.send(new GenericMessage<String>("foo"), 0); channel.send(new GenericMessage<String>("bar"), 0); endpoint.start(); trigger.await(); endpoint.stop(); String newLine = System.getProperty("line.separator"); assertEquals("foo" + newLine + "bar" + newLine, writer.toString()); }
pollingConsumer.setTrigger(this.pollerMetadata.getTrigger()); pollingConsumer.setAdviceChain(this.pollerMetadata.getAdviceChain()); pollingConsumer.setMaxMessagesPerPoll(this.pollerMetadata.getMaxMessagesPerPoll());
@Test public void twoStringsWithNewLines() { handler.setShouldAppendNewLine(true); endpoint.setTrigger(trigger); endpoint.setMaxMessagesPerPoll(1); channel.send(new GenericMessage<String>("foo"), 0); channel.send(new GenericMessage<String>("bar"), 0); endpoint.start(); trigger.await(); endpoint.stop(); String newLine = System.getProperty("line.separator"); assertEquals("foo" + newLine, writer.toString()); trigger.reset(); endpoint.start(); trigger.await(); endpoint.stop(); assertEquals("foo" + newLine + "bar" + newLine, writer.toString()); }
@Test public void twoNonStringObjectWithNewLines() { handler.setShouldAppendNewLine(true); endpoint.setReceiveTimeout(0); endpoint.setMaxMessagesPerPoll(2); endpoint.setTrigger(trigger); TestObject testObject1 = new TestObject("foo"); TestObject testObject2 = new TestObject("bar"); channel.send(new GenericMessage<TestObject>(testObject1), 0); channel.send(new GenericMessage<TestObject>(testObject2), 0); endpoint.start(); trigger.await(); endpoint.stop(); String newLine = System.getProperty("line.separator"); assertEquals("foo" + newLine + "bar" + newLine, writer.toString()); }
@Test public void maxMessagesPerTaskLessThanMessageCount() { endpoint.setTrigger(trigger); endpoint.setMaxMessagesPerPoll(2); channel.send(new GenericMessage<byte[]>(new byte[] {1, 2, 3}), 0); channel.send(new GenericMessage<byte[]>(new byte[] {4, 5, 6}), 0); channel.send(new GenericMessage<byte[]>(new byte[] {7, 8, 9}), 0); endpoint.start(); trigger.await(); endpoint.stop(); byte[] result = stream.toByteArray(); assertEquals(6, result.length); assertEquals(1, result[0]); }
@Test public void twoStringsAndNoNewLinesByDefault() { endpoint.setMaxMessagesPerPoll(1); endpoint.setTrigger(trigger); channel.send(new GenericMessage<String>("foo"), 0); channel.send(new GenericMessage<String>("bar"), 0); endpoint.start(); trigger.await(); endpoint.stop(); assertEquals("foo", writer.toString()); trigger.reset(); endpoint.start(); trigger.await(); endpoint.stop(); assertEquals("foobar", writer.toString()); }
@Test public void twoNonStringObjectWithOutNewLines() { endpoint.setReceiveTimeout(0); endpoint.setTrigger(trigger); endpoint.setMaxMessagesPerPoll(2); TestObject testObject1 = new TestObject("foo"); TestObject testObject2 = new TestObject("bar"); channel.send(new GenericMessage<TestObject>(testObject1), 0); channel.send(new GenericMessage<TestObject>(testObject2), 0); endpoint.start(); trigger.await(); endpoint.stop(); assertEquals("foobar", writer.toString()); }
@Test public void maxMessagesPerTaskSameAsMessageCount() { endpoint.setTrigger(trigger); endpoint.setMaxMessagesPerPoll(3); channel.send(new GenericMessage<byte[]>(new byte[] {1, 2, 3}), 0); channel.send(new GenericMessage<byte[]>(new byte[] {4, 5, 6}), 0); channel.send(new GenericMessage<byte[]>(new byte[] {7, 8, 9}), 0); endpoint.start(); trigger.await(); endpoint.stop(); byte[] result = stream.toByteArray(); assertEquals(9, result.length); assertEquals(1, result[0]); assertEquals(9, result[8]); }
@Test public void testStreamWriteBetweenDispatches() throws IOException { endpoint.setTrigger(trigger); endpoint.setMaxMessagesPerPoll(2); endpoint.setReceiveTimeout(0); channel.send(new GenericMessage<byte[]>(new byte[] {1, 2, 3}), 0); channel.send(new GenericMessage<byte[]>(new byte[] {4, 5, 6}), 0); channel.send(new GenericMessage<byte[]>(new byte[] {7, 8, 9}), 0); endpoint.start(); trigger.await(); endpoint.stop(); byte[] result1 = stream.toByteArray(); assertEquals(6, result1.length); stream.write(new byte[] {123}); stream.flush(); trigger.reset(); endpoint.start(); trigger.await(); endpoint.stop(); byte[] result2 = stream.toByteArray(); assertEquals(10, result2.length); assertEquals(1, result2[0]); assertEquals(123, result2[6]); assertEquals(7, result2[7]); }
@Test public void testStreamResetBetweenDispatches() { endpoint.setMaxMessagesPerPoll(2); endpoint.setTrigger(trigger); endpoint.setReceiveTimeout(0); channel.send(new GenericMessage<byte[]>(new byte[] {1, 2, 3}), 0); channel.send(new GenericMessage<byte[]>(new byte[] {4, 5, 6}), 0); channel.send(new GenericMessage<byte[]>(new byte[] {7, 8, 9}), 0); endpoint.start(); trigger.await(); endpoint.stop(); byte[] result1 = stream.toByteArray(); assertEquals(6, result1.length); stream.reset(); trigger.reset(); endpoint.start(); trigger.await(); endpoint.stop(); byte[] result2 = stream.toByteArray(); assertEquals(3, result2.length); assertEquals(7, result2[0]); }
@Test public void maxMessagesPerTaskExceedsMessageCount() { endpoint.setTrigger(trigger); endpoint.setMaxMessagesPerPoll(5); endpoint.setReceiveTimeout(0); channel.send(new GenericMessage<byte[]>(new byte[] {1, 2, 3}), 0); channel.send(new GenericMessage<byte[]>(new byte[] {4, 5, 6}), 0); channel.send(new GenericMessage<byte[]>(new byte[] {7, 8, 9}), 0); endpoint.start(); trigger.await(); endpoint.stop(); byte[] result = stream.toByteArray(); assertEquals(9, result.length); assertEquals(1, result[0]); }
@Test public void testMaxMessagesExceedsMessageCountWithMultipleDispatches() { endpoint.setTrigger(trigger); endpoint.setMaxMessagesPerPoll(5); endpoint.setReceiveTimeout(0); channel.send(new GenericMessage<byte[]>(new byte[] {1, 2, 3}), 0); channel.send(new GenericMessage<byte[]>(new byte[] {4, 5, 6}), 0); channel.send(new GenericMessage<byte[]>(new byte[] {7, 8, 9}), 0); endpoint.start(); trigger.await(); endpoint.stop(); byte[] result1 = stream.toByteArray(); assertEquals(9, result1.length); assertEquals(1, result1[0]); trigger.reset(); endpoint.start(); trigger.await(); endpoint.stop(); byte[] result2 = stream.toByteArray(); assertEquals(9, result2.length); assertEquals(1, result2[0]); }
@Test public void testMaxMessagesLessThanMessageCountWithMultipleDispatches() { endpoint.setTrigger(trigger); endpoint.setMaxMessagesPerPoll(2); endpoint.setReceiveTimeout(0); channel.send(new GenericMessage<byte[]>(new byte[] {1, 2, 3}), 0); channel.send(new GenericMessage<byte[]>(new byte[] {4, 5, 6}), 0); channel.send(new GenericMessage<byte[]>(new byte[] {7, 8, 9}), 0); endpoint.start(); trigger.await(); endpoint.stop(); byte[] result1 = stream.toByteArray(); assertEquals(6, result1.length); assertEquals(1, result1[0]); trigger.reset(); endpoint.start(); trigger.await(); endpoint.stop(); byte[] result2 = stream.toByteArray(); assertEquals(9, result2.length); assertEquals(1, result2[0]); assertEquals(7, result2[6]); }