Files
JIMRI/java/test/jmri/jmrix/dcc4pc/Dcc4PcMessageTest.java
2026-06-17 14:00:51 +02:00

181 lines
6.9 KiB
Java

package jmri.jmrix.dcc4pc;
import jmri.util.JUnitUtil;
import org.junit.Assert;
import org.junit.jupiter.api.*;
/**
*
* @author Paul Bender Copyright (C) 2017
*/
public class Dcc4PcMessageTest extends jmri.jmrix.AbstractMessageTestBase {
// check contents of canned messages
@Test
public void checkProgModeMessage(){
Assert.assertNotNull(Dcc4PcMessage.getProgMode());
// source says the message is not supported, so no
// content is added to the message for us to test at this
// point in time.
}
@Test
public void checkExitProgModeMessage(){
Assert.assertNotNull(Dcc4PcMessage.getExitProgMode());
// source says the message is not supported, so no
// content is added to the message for us to test at this
// point in time.
}
@Test
public void checkGetInfo(){
Dcc4PcMessage m = Dcc4PcMessage.getInfo(1);
Assert.assertNotNull(m);
Assert.assertTrue("for child",m.isForChildBoard());
Assert.assertFalse("get response",m.isGetResponse());
Assert.assertEquals("board",1,m.getBoard());
Assert.assertEquals("message type",Dcc4PcMessage.INFO,m.getMessageType());
Assert.assertEquals("retries",2,m.getRetries());
Assert.assertEquals(0x0b,m.getElement(0));
Assert.assertEquals(1,m.getElement(1));
Assert.assertEquals(Dcc4PcMessage.INFO,m.getElement(2));
}
@Test
public void checkGetDescription(){
Dcc4PcMessage m = Dcc4PcMessage.getDescription(1);
Assert.assertNotNull(m);
Assert.assertTrue("for child",m.isForChildBoard());
Assert.assertFalse("get response",m.isGetResponse());
Assert.assertEquals("board",1,m.getBoard());
Assert.assertEquals("message type",Dcc4PcMessage.DESC,m.getMessageType());
Assert.assertEquals("retries",1,m.getRetries());
Assert.assertEquals(0x0b,m.getElement(0));
Assert.assertEquals(1,m.getElement(1));
Assert.assertEquals(Dcc4PcMessage.DESC,m.getElement(2));
}
@Test
public void checkGetSerialNumber(){
Dcc4PcMessage m = Dcc4PcMessage.getSerialNumber(1);
Assert.assertNotNull(m);
Assert.assertTrue("for child",m.isForChildBoard());
Assert.assertFalse("get response",m.isGetResponse());
Assert.assertEquals("board",1,m.getBoard());
Assert.assertEquals("message type",Dcc4PcMessage.SERIAL,m.getMessageType());
Assert.assertEquals("retries",1,m.getRetries());
Assert.assertEquals(0x0b,m.getElement(0));
Assert.assertEquals(1,m.getElement(1));
Assert.assertEquals(Dcc4PcMessage.SERIAL,m.getElement(2));
}
@Test
public void checkResetBoardData(){
Dcc4PcMessage m = Dcc4PcMessage.resetBoardData(1);
Assert.assertNotNull(m);
Assert.assertTrue("for child",m.isForChildBoard());
Assert.assertFalse("get response",m.isGetResponse());
Assert.assertEquals("board",1,m.getBoard());
Assert.assertEquals("message type",Dcc4PcMessage.CHILDRESET,m.getMessageType());
Assert.assertEquals("retries",1,m.getRetries());
Assert.assertEquals(0x0b,m.getElement(0));
Assert.assertEquals(1,m.getElement(1));
Assert.assertEquals(Dcc4PcMessage.CHILDRESET,m.getElement(2));
}
@Test
public void checkPollBoard(){
Dcc4PcMessage m = Dcc4PcMessage.pollBoard(1);
Assert.assertNotNull(m);
Assert.assertTrue("for child",m.isForChildBoard());
Assert.assertFalse("get response",m.isGetResponse());
Assert.assertEquals("board",1,m.getBoard());
Assert.assertEquals("message type",Dcc4PcMessage.CHILDPOLL,m.getMessageType());
Assert.assertEquals("retries",1,m.getRetries());
Assert.assertEquals("timeout",500,m.getTimeout());
Assert.assertEquals(0x0b,m.getElement(0));
Assert.assertEquals(1,m.getElement(1));
Assert.assertEquals(Dcc4PcMessage.CHILDPOLL,m.getElement(2));
}
@Test
public void checkGetEnabledInputs(){
Dcc4PcMessage m = Dcc4PcMessage.getEnabledInputs(1);
Assert.assertNotNull(m);
Assert.assertTrue("for child",m.isForChildBoard());
Assert.assertFalse("get response",m.isGetResponse());
Assert.assertEquals("board",1,m.getBoard());
Assert.assertEquals("message type",Dcc4PcMessage.CHILDENABLEDINPUTS,m.getMessageType());
Assert.assertEquals("retries",1,m.getRetries());
Assert.assertEquals(0x0b,m.getElement(0));
Assert.assertEquals(1,m.getElement(1));
Assert.assertEquals(Dcc4PcMessage.CHILDENABLEDINPUTS,m.getElement(2));
}
@Test
public void checkParentInfo(){
Dcc4PcMessage m = Dcc4PcMessage.getInfo();
Assert.assertNotNull(m);
Assert.assertFalse("for child",m.isForChildBoard());
Assert.assertFalse("get response",m.isGetResponse());
Assert.assertEquals("board",-1,m.getBoard());
Assert.assertEquals("message type",Dcc4PcMessage.INFO,m.getMessageType());
Assert.assertEquals("retries",1,m.getRetries());
Assert.assertEquals(Dcc4PcMessage.INFO,m.getElement(0));
}
@Test
public void checkParentResponse(){
Dcc4PcMessage m = Dcc4PcMessage.getResponse();
Assert.assertNotNull(m);
Assert.assertFalse("for child",m.isForChildBoard());
Assert.assertTrue("get response",m.isGetResponse());
Assert.assertEquals("board",-1,m.getBoard());
Assert.assertEquals("message type",Dcc4PcMessage.RESPONSE,m.getMessageType());
Assert.assertEquals("retries",1,m.getRetries());
Assert.assertEquals(Dcc4PcMessage.RESPONSE,m.getElement(0));
}
@Test
public void checkParentDescription(){
Dcc4PcMessage m = Dcc4PcMessage.getDescription();
Assert.assertNotNull(m);
Assert.assertFalse("for child",m.isForChildBoard());
Assert.assertFalse("get response",m.isGetResponse());
Assert.assertEquals("board",-1,m.getBoard());
Assert.assertEquals("message type",Dcc4PcMessage.DESC,m.getMessageType());
Assert.assertEquals("retries",1,m.getRetries());
Assert.assertEquals(Dcc4PcMessage.DESC,m.getElement(0));
}
@Test
public void checkParentSerialNumber(){
Dcc4PcMessage m = Dcc4PcMessage.getSerialNumber();
Assert.assertNotNull(m);
Assert.assertFalse("for child",m.isForChildBoard());
Assert.assertFalse("get response",m.isGetResponse());
Assert.assertEquals("board",-1,m.getBoard());
Assert.assertEquals("message type",Dcc4PcMessage.SERIAL,m.getMessageType());
Assert.assertEquals("retries",1,m.getRetries());
Assert.assertEquals(Dcc4PcMessage.SERIAL,m.getElement(0));
}
@BeforeEach
@Override
public void setUp() {
JUnitUtil.setUp();
m = new Dcc4PcMessage(5);
}
@Override
@AfterEach
public void tearDown() {
m = null;
JUnitUtil.tearDown();
}
// private static final Logger log = LoggerFactory.getLogger(Dcc4PcMessageTest.class);
}