diff --git a/src/main/java/teetime/stage/basic/merger/Merger.java b/src/main/java/teetime/stage/basic/merger/Merger.java index f162b2d598e0d96113798e0bb916b1d61b14cb20..d8b0320a7fbe6f12093fa1a80cdfa76fc6007761 100644 --- a/src/main/java/teetime/stage/basic/merger/Merger.java +++ b/src/main/java/teetime/stage/basic/merger/Merger.java @@ -59,7 +59,6 @@ public final class Merger<T> extends AbstractStage { if (token == null) { returnNoElement(); } - outputPort.send(token); } diff --git a/src/site/markdown/wiki b/src/site/markdown/wiki index 0e4474577e1f49bc96e734c286b2d9e0363895e8..63ccbbc87bd2c0e6599ca91502149dba3cfb99de 160000 --- a/src/site/markdown/wiki +++ b/src/site/markdown/wiki @@ -1 +1 @@ -Subproject commit 0e4474577e1f49bc96e734c286b2d9e0363895e8 +Subproject commit 63ccbbc87bd2c0e6599ca91502149dba3cfb99de diff --git a/src/test/java/teetime/stage/basic/merger/MergerTest.java b/src/test/java/teetime/stage/basic/merger/MergerTest.java index 234537e01dca9f28c400ed90c2043d6085013f45..fad02a9f3d1abddd9eb8bc92539576714f1a16cf 100644 --- a/src/test/java/teetime/stage/basic/merger/MergerTest.java +++ b/src/test/java/teetime/stage/basic/merger/MergerTest.java @@ -16,13 +16,20 @@ package teetime.stage.basic.merger; import static org.hamcrest.Matchers.contains; +import static org.hamcrest.Matchers.empty; +import static org.hamcrest.Matchers.is; +import static org.hamcrest.Matchers.not; import static org.junit.Assert.assertThat; +import java.util.ArrayList; +import java.util.List; + import org.junit.Before; import org.junit.Test; import teetime.framework.pipe.IPipeFactory; import teetime.framework.pipe.SingleElementPipeFactory; +import teetime.framework.test.StageTester; import teetime.stage.CollectorSink; import teetime.stage.InitialElementProducer; @@ -72,4 +79,17 @@ public class MergerTest { assertThat(this.collector.getElements(), contains(1, 2, 3)); } + @Test + public void roundRobinShouldWork2() { + mergerUnderTest = new Merger<Integer>(); + mergerUnderTest.setStrategy(new RoundRobinStrategy()); + + List<Integer> outputList = new ArrayList<Integer>(); + StageTester.test(mergerUnderTest).and().send(1, 2, 3).to(mergerUnderTest.getNewInputPort()) + .and().send(4, 5, 6).to(mergerUnderTest.getNewInputPort()) + .and().receive(outputList); + + assertThat(outputList, is(not(empty()))); + assertThat(outputList, contains(1, 2, 3, 4, 5, 6)); + } }