Files
2026-06-17 14:00:51 +02:00

76 lines
1.9 KiB
Java

package jmri.jmrix.tmcc.serialmon;
import jmri.jmrix.tmcc.SerialMessage;
import jmri.jmrix.tmcc.SerialReply;
import jmri.jmrix.tmcc.SerialTrafficControlScaffold;
import jmri.jmrix.tmcc.TmccSystemConnectionMemo;
import jmri.util.JUnitUtil;
import jmri.util.ThreadingUtil;
import jmri.util.junit.annotations.DisabledIfHeadless;
import org.junit.jupiter.api.*;
/**
* Tests for the jmri.jmrix.tmcc.serialmon.SerialMonFrame class
*
* @author Bob Jacobsen
*/
public class SerialMonFrameTest {
@Test
@DisabledIfHeadless
public void testCreateAndShow() {
TmccSystemConnectionMemo memo = new TmccSystemConnectionMemo("T", "TMCC via Serial");
memo.setTrafficController(new SerialTrafficControlScaffold(memo));
SerialMonFrame f = new SerialMonFrame(memo);
// MonFrame needs a TrafficController for dispose()
ThreadingUtil.runOnGUI( () -> {
f.initComponents();
f.pack();
f.setVisible(true);
});
Assertions.assertTrue(f.isVisible());
SerialReply m = new SerialReply();
m.setOpCode(0xFE);
m.setElement(1, 0x21);
m.setElement(2, 0x43);
f.reply(m);
m = new SerialReply();
m.setElement(0, 0x21);
f.reply(m);
SerialMessage mm = new SerialMessage();
mm.setOpCode(0xFE);
mm.setElement(1, 0x21);
mm.setElement(2, 0x43);
f.message(mm);
JUnitUtil.dispose(f);
// cleanup
memo.getTrafficController().terminateThreads();
memo.dispose();
}
@BeforeEach
public void setUp() {
JUnitUtil.setUp();
JUnitUtil.resetProfileManager();
JUnitUtil.initDefaultUserMessagePreferences();
}
@AfterEach
public void tearDown() {
JUnitUtil.clearShutDownManager();
JUnitUtil.tearDown();
}
// private static final org.slf4j.Logger log = org.slf4j.LoggerFactory.getLogger(SerialMonFrameTest.class);
}