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