@Test
public void testMessagesAreLooped() {
List<PubSubMessage> expected = asList(new PubSubMessage("42", Metadata.Signal.KILL),
new PubSubMessage("43", Metadata.Signal.COMPLETE),
new PubSubMessage("44", (Metadata.Signal) null));
List<Tuple> tuples = new ArrayList<>();
expected.forEach(m -> tuples.add(makeTuple(m.getId(), m.getMetadata())));
for (int i = 0; i < tuples.size(); i++) {
bolt.execute(tuples.get(i));
Assert.assertEquals(publisher.getSent().get(i).getId(), expected.get(i).getId());
Assert.assertEquals(publisher.getSent().get(i).getMetadata(), expected.get(i).getMetadata());
Assert.assertTrue(collector.wasNthAcked(tuples.get(i), i + 1));
Assert.assertEquals(collector.getAckedCount(), i + 1);
}
}