diff --git a/src/test/java/teetime/stage/io/filesystem/Dir2RecordsFilterTest.java b/src/test/java/teetime/stage/io/filesystem/Dir2RecordsFilterTest.java new file mode 100644 index 0000000000000000000000000000000000000000..9b9f5c2a37c47a3b848804f8100edb1c99763e7e --- /dev/null +++ b/src/test/java/teetime/stage/io/filesystem/Dir2RecordsFilterTest.java @@ -0,0 +1,59 @@ +package teetime.stage.io.filesystem; + +import java.io.File; + +import org.junit.Test; + +import teetime.framework.AbstractCompositeStage; +import teetime.framework.Analysis; +import teetime.framework.AnalysisConfiguration; +import teetime.framework.OutputPort; +import teetime.framework.Stage; +import teetime.stage.InitialElementProducer; +import teetime.stage.className.ClassNameRegistryRepository; +import teetime.stage.io.Printer; + +import kieker.common.record.IMonitoringRecord; + +public class Dir2RecordsFilterTest { + + class TestConfiguration extends AnalysisConfiguration { + + public TestConfiguration() { + final ReadingComposite reader = new ReadingComposite(new File(".")); + final Printer<IMonitoringRecord> printer = new Printer<IMonitoringRecord>(); + + super.connectIntraThreads(reader.getOutputPort(), printer.getInputPort()); + super.addThreadableStage(reader); + } + } + + @SuppressWarnings("deprecation") + class ReadingComposite extends AbstractCompositeStage { + + private final InitialElementProducer<File> producer; + private final Dir2RecordsFilter reader; + + public ReadingComposite(final File importDirectory) { + this.producer = new InitialElementProducer<File>(importDirectory); + this.reader = new Dir2RecordsFilter(new ClassNameRegistryRepository()); + + super.connectPorts(this.producer.getOutputPort(), this.reader.getInputPort()); + } + + public OutputPort<IMonitoringRecord> getOutputPort() { + return this.reader.getOutputPort(); + } + + @Override + protected Stage getFirstStage() { + return this.producer; + } + + } + + @Test + public void noExceptionThrown() { + new Analysis<TestConfiguration>(new TestConfiguration()).executeBlocking(); + } +}