1 package era.mi.logic.tests;
\r
3 import static org.junit.jupiter.api.Assertions.assertArrayEquals;
\r
5 import java.util.function.LongConsumer;
\r
7 import era.mi.logic.components.BitDisplay;
\r
8 import era.mi.logic.timeline.Timeline;
\r
9 import era.mi.logic.types.Bit;
\r
10 import era.mi.logic.wires.Wire.ReadEnd;
\r
12 public final class TestBitDisplay extends BitDisplay
\r
15 public TestBitDisplay(Timeline timeline, ReadEnd in)
\r
17 super(timeline, in);
\r
20 public void assertDisplays(Bit... expected)
\r
22 assertArrayEquals(expected, getDisplayedValue().getBits());
\r
25 public void assertAfterSimulationIs(Bit... expected)
\r
27 timeline.executeAll();
\r
28 assertDisplays(expected);
\r
31 public void assertAfterSimulationIs(LongConsumer r, Bit... expected)
\r
33 while (timeline.hasNext())
\r
35 timeline.executeNext();
\r
36 r.accept(timeline.getSimulationTime());
\r
38 assertDisplays(expected);
\r
42 protected void compute()
\r
45 System.out.println("update: value is " + getDisplayedValue());
\r