Skip to content
Snippets Groups Projects
Commit 4ea49c0f authored by Christian Wulf's avatar Christian Wulf
Browse files

removed setIter in InitialElementProducer

parent c75454ed
No related branches found
No related tags found
No related merge requests found
......@@ -19,23 +19,24 @@ import java.util.Arrays;
import teetime.framework.AbstractProducerStage;
public final class InitialElementProducer<T> extends AbstractProducerStage<T> {
public class InitialElementProducer<T> extends AbstractProducerStage<T> {
private Iterable<T> elements;
private final Iterable<T> elements;
public InitialElementProducer(final T... elements) {
this.elements = Arrays.asList(elements);
this(Arrays.asList(elements));
}
public InitialElementProducer(final Iterable<T> elements) {
if (elements == null) {
throw new IllegalArgumentException("The given iterable must not be null");
}
this.elements = elements;
}
@Override
public void onStarting() throws Exception {
if (elements == null) {
throw new IllegalArgumentException("The given iterable must not be null");
}
super.onStarting();
}
......@@ -47,12 +48,4 @@ public final class InitialElementProducer<T> extends AbstractProducerStage<T> {
this.terminate();
}
public void setIter(final T... elements) {
this.elements = Arrays.asList(elements);
}
public void setIter(final Iterable<T> elements) {
this.elements = elements;
}
}
......@@ -31,45 +31,37 @@ import org.junit.Test;
*/
public class InitialElementProducerTest {
private InitialElementProducer<Integer> producer;
// @Before
public void initializeProducer() {
producer = new InitialElementProducer<Integer>();
}
@Test
public void producerShouldByDefaultSendNothing() {
initializeProducer();
InitialElementProducer<Integer> producer = new InitialElementProducer<Integer>();
List<Integer> results = new ArrayList<Integer>();
test(producer).and().receive(results).from(producer.getOutputPort()).start();
assertThat(results, is(empty()));
}
@Test
public void testSetIterArray() {
initializeProducer();
producer.setIter(new Integer[] { 1, 2, 3 });
List<Integer> results = new ArrayList<Integer>();
test(producer).and().receive(results).from(producer.getOutputPort()).start();
assertThat(results, contains(1, 2, 3));
}
@Test
public void testSetIterVarargs() {
initializeProducer();
producer.setIter(1, 2, 3);
List<Integer> results = new ArrayList<Integer>();
test(producer).and().receive(results).from(producer.getOutputPort()).start();
assertThat(results, contains(1, 2, 3));
}
// @Test
// public void testSetIterArray() {
// InitialElementProducer<Integer> producer = new InitialElementProducer<Integer>(new Integer[] { 1, 2, 3 });
//
// List<Integer> results = new ArrayList<Integer>();
//
// test(producer).and().receive(results).from(producer.getOutputPort()).start();
// assertThat(results, contains(1, 2, 3));
// }
//
// @Test
// public void testSetIterVarargs() {
// InitialElementProducer<Integer> producer = new InitialElementProducer<Integer>(1, 2, 3);
// List<Integer> results = new ArrayList<Integer>();
//
// test(producer).and().receive(results).from(producer.getOutputPort()).start();
// assertThat(results, contains(1, 2, 3));
// }
@Test
public void instantiateWithArray() {
producer = new InitialElementProducer<Integer>(new Integer[] { 1, 2, 3 });
InitialElementProducer<Integer> producer = new InitialElementProducer<Integer>(new Integer[] { 1, 2, 3 });
List<Integer> results = new ArrayList<Integer>();
test(producer).and().receive(results).from(producer.getOutputPort()).start();
......@@ -78,7 +70,7 @@ public class InitialElementProducerTest {
@Test
public void instantiateWithVarargs() {
producer = new InitialElementProducer<Integer>(1, 2, 3);
InitialElementProducer<Integer> producer = new InitialElementProducer<Integer>(1, 2, 3);
List<Integer> results = new ArrayList<Integer>();
test(producer).and().receive(results).from(producer.getOutputPort()).start();
......@@ -91,7 +83,7 @@ public class InitialElementProducerTest {
testIntegers.add(1);
testIntegers.add(2);
testIntegers.add(3);
producer = new InitialElementProducer<Integer>(testIntegers);
InitialElementProducer<Integer> producer = new InitialElementProducer<Integer>(testIntegers);
List<Integer> results = new ArrayList<Integer>();
test(producer).and().receive(results).from(producer.getOutputPort()).start();
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment