diff options
Diffstat (limited to 'src/test')
| -rw-r--r-- | src/test/java/simulator/VSSimulatorFrameStartupTest.java | 24 |
1 files changed, 24 insertions, 0 deletions
diff --git a/src/test/java/simulator/VSSimulatorFrameStartupTest.java b/src/test/java/simulator/VSSimulatorFrameStartupTest.java index ecd64a3..f540033 100644 --- a/src/test/java/simulator/VSSimulatorFrameStartupTest.java +++ b/src/test/java/simulator/VSSimulatorFrameStartupTest.java @@ -13,6 +13,7 @@ import org.junit.jupiter.api.Assumptions; import org.junit.jupiter.api.Test; import prefs.VSDefaultPrefs; +import serialize.VSSerialize; public class VSSimulatorFrameStartupTest { private static final String RAFT_FILE = "saved-simulations/raft.dat"; @@ -78,4 +79,27 @@ public class VSSimulatorFrameStartupTest { SwingUtilities.invokeAndWait(frame::dispose); } } + + @Test + void openSimulatorPreservesSavedReplayDuration() throws Exception { + Assumptions.assumeFalse(GraphicsEnvironment.isHeadless(), + "requires a display"); + + TrackingSimulatorFrame frame = new TrackingSimulatorFrame(); + try { + frame.resetTracking(); + + VSSerialize serialize = new VSSerialize(); + VSSimulator simulator = serialize.openSimulator(RAFT_FILE, frame); + assertNotNull(simulator); + + SwingUtilities.invokeAndWait(() -> { }); + + assertEquals(simulator, frame.getCurrentSimulator()); + assertEquals(60, simulator.getPrefs().getInteger("sim.seconds")); + assertEquals(60000L, simulator.getSimulatorCanvas().getUntilTime()); + } finally { + SwingUtilities.invokeAndWait(frame::dispose); + } + } } |
