For a regular unit test of a stage, you need to create and execute a custom configuration which contains your stage under test (SUT), at least one producer to feed your SUT, and at least one sink to collect and test the output elements of your SUT.
An example is shown below.
It does not only include much boilerplate code, but also hides the actual SUT.
The test does not name the SUT because it is encapsulated by the custom configuration.
Instead of building and executing a test configuration by yourself, our testing framework takes over this task.
It automatically creates a configuration which contains one InitialElementProducer per input port and one CollectorSink per output port of your stage under test.
Just start with the entry method teetime.framework.test.StageTester.test(..) and enjoy the fluent API.
Examples are given below.