78 lines
2.3 KiB
Java
78 lines
2.3 KiB
Java
package jmri.jmrix.qsi.qsimon;
|
|
|
|
import jmri.ProgrammingMode;
|
|
import jmri.jmrix.qsi.QsiMessage;
|
|
import jmri.jmrix.qsi.QsiReply;
|
|
import jmri.jmrix.qsi.QsiTrafficControlScaffold;
|
|
import jmri.util.JUnitUtil;
|
|
import jmri.util.JmriJFrameTestBase;
|
|
|
|
import org.junit.jupiter.api.*;
|
|
import org.junit.jupiter.api.condition.DisabledIfSystemProperty;
|
|
|
|
/**
|
|
* JUnit tests for the QsiProgrammer class
|
|
*
|
|
* @author Bob Jacobsen
|
|
*/
|
|
@DisabledIfSystemProperty(named = "java.awt.headless", matches = "true")
|
|
public class QsiMonFrameTest extends JmriJFrameTestBase {
|
|
|
|
@Test
|
|
public void testCreate() {
|
|
Assertions.assertNotNull(frame, "exists");
|
|
}
|
|
|
|
@Test
|
|
public void testMsg() {
|
|
QsiMessage m = QsiMessage.getReadCV(25, ProgrammingMode.PAGEMODE);
|
|
((QsiMonFrame)frame).message(m);
|
|
|
|
JUnitUtil.waitFor(() -> (!((QsiMonFrame)frame).getTextArea().getText().isEmpty()), "Text Area populated");
|
|
Assertions.assertTrue( ((QsiMonFrame)frame).getTextArea().getText().contains("M: OP_REQ_READ_CV with CV=25"));
|
|
}
|
|
|
|
@Test
|
|
public void testReply() {
|
|
QsiReply m = new QsiReply();
|
|
m.setOpCode('C');
|
|
m.setElement(1, 'o');
|
|
m.setElement(2, ':');
|
|
((QsiMonFrame)frame).reply(m);
|
|
|
|
JUnitUtil.waitFor(() -> (!((QsiMonFrame)frame).getTextArea().getText().isEmpty()), "Text Area populated");
|
|
Assertions.assertTrue( ((QsiMonFrame)frame).getTextArea().getText().contains("U: Untranslated reply: <67><111><58>"));
|
|
}
|
|
|
|
private jmri.jmrix.qsi.QsiSystemConnectionMemo memo = null;
|
|
private QsiTrafficControlScaffold tc = null;
|
|
|
|
@BeforeEach
|
|
@Override
|
|
public void setUp() {
|
|
JUnitUtil.setUp();
|
|
tc = new QsiTrafficControlScaffold();
|
|
memo = new jmri.jmrix.qsi.QsiSystemConnectionMemo(tc);
|
|
frame = new QsiMonFrame(memo);
|
|
}
|
|
|
|
@AfterEach
|
|
@Override
|
|
public void tearDown() {
|
|
if(frame!=null) {
|
|
JUnitUtil.dispose(frame); // close frame before memo
|
|
}
|
|
frame = null;
|
|
Assertions.assertNotNull(memo);
|
|
Assertions.assertNotNull(tc);
|
|
memo.dispose();
|
|
memo = null;
|
|
tc = null;
|
|
super.tearDown();
|
|
|
|
}
|
|
|
|
// private static final org.slf4j.Logger log = org.slf4j.LoggerFactory.getLogger(QsiMonFrameTest.class);
|
|
|
|
}
|