From 5f7d8971e67c0f5a00dab39ec0b864d53161f6a5 Mon Sep 17 00:00:00 2001
From: Nelson Tavares de Sousa <stu103017@mail.uni-kiel.de>
Date: Wed, 20 May 2015 13:55:17 +0200
Subject: [PATCH] added test for printer

---
 .../java/teetime/stage/io/PrinterTest.java    | 35 +++++++++++++++++++
 1 file changed, 35 insertions(+)
 create mode 100644 src/test/java/teetime/stage/io/PrinterTest.java

diff --git a/src/test/java/teetime/stage/io/PrinterTest.java b/src/test/java/teetime/stage/io/PrinterTest.java
new file mode 100644
index 00000000..a8de4966
--- /dev/null
+++ b/src/test/java/teetime/stage/io/PrinterTest.java
@@ -0,0 +1,35 @@
+package teetime.stage.io;
+
+import static org.hamcrest.CoreMatchers.containsString;
+import static org.junit.Assert.assertThat;
+
+import java.io.ByteArrayOutputStream;
+import java.io.PrintStream;
+import java.util.Arrays;
+
+import org.junit.Test;
+
+import teetime.framework.test.StageTester;
+import teetime.stage.basic.merger.Merger;
+
+public class PrinterTest {
+
+	@Test
+	public void testOutput() {
+		Printer<Merger<Object>> printer = new Printer<Merger<Object>>();
+		Merger<Object> testStage = new Merger<Object>();
+
+		final StringBuilder sb = new StringBuilder(128);
+		sb.append(printer.getId());
+		sb.append('(').append(testStage.getClass().getSimpleName()).append(") ").append(testStage.toString());
+
+		PrintStream systemOut = System.out;
+		final ByteArrayOutputStream outContent = new ByteArrayOutputStream();
+		System.setOut(new PrintStream(outContent));
+
+		StageTester.test(printer).send(Arrays.asList(testStage)).to(printer.getInputPort()).start();
+		assertThat(outContent.toString(), containsString(sb.toString()));
+
+		System.setOut(systemOut);
+	}
+}
-- 
GitLab