190 lines
6.4 KiB
Java
190 lines
6.4 KiB
Java
package jmri.jmrix.xpa;
|
|
|
|
import jmri.util.JUnitUtil;
|
|
|
|
import org.junit.jupiter.api.*;
|
|
import org.junit.Assert;
|
|
|
|
/**
|
|
* Tests for the jmri.jmrix.xpa.XpaMessage class
|
|
*
|
|
* @author Paul Bender
|
|
*/
|
|
public class XpaMessageTest {
|
|
|
|
@Test
|
|
public void testCtor() {
|
|
XpaMessage m = new XpaMessage(3);
|
|
Assert.assertNotNull("Length Constructor Succeeded", m);
|
|
Assert.assertEquals("length", 3, m.getNumDataElements());
|
|
}
|
|
|
|
@Test
|
|
public void testStringConstructor() {
|
|
String s = "ATDT0;";
|
|
XpaMessage m = new XpaMessage(s);
|
|
Assert.assertNotNull("String Constructor Succeeded", m);
|
|
Assert.assertEquals("length", 6, m.getNumDataElements());
|
|
}
|
|
|
|
@Test
|
|
public void testDefaultCtor() {
|
|
XpaMessage m = new XpaMessage();
|
|
Assert.assertNotNull("Length Constructor Succeeded", m);
|
|
Assert.assertEquals("length", XpaMessage.MAX_SIZE, m.getNumDataElements());
|
|
}
|
|
|
|
@Test
|
|
public void testCopyCtor() {
|
|
String s = "ATDT0;";
|
|
XpaMessage m = new XpaMessage(s);
|
|
XpaMessage m2 = new XpaMessage(m);
|
|
Assert.assertNotNull("String Constructor Succeeded", m2);
|
|
Assert.assertEquals("length", m.getNumDataElements(), m2.getNumDataElements());
|
|
Assert.assertTrue("content", m.equals(m2));
|
|
}
|
|
|
|
@Test
|
|
public void testGetNumDataElements() {
|
|
XpaMessage m = new XpaMessage("ATDT0;");
|
|
Assert.assertTrue("Num Data Elements correct", 6 == m.getNumDataElements());
|
|
}
|
|
|
|
@Test
|
|
public void testSetAndGetElement() {
|
|
XpaMessage m = new XpaMessage();
|
|
m.setElement(0, 'A');
|
|
Assert.assertTrue("Element 0 Set to \'A\'", 'A' == m.getElement(0));
|
|
}
|
|
|
|
@Test
|
|
public void testToString() {
|
|
String s = "ATDT0;";
|
|
XpaMessage m = new XpaMessage(s);
|
|
Assert.assertTrue("toString Result", m.toString().equals(s));
|
|
}
|
|
|
|
@Test
|
|
public void testEquals() {
|
|
String s1 = "ATDT0;";
|
|
XpaMessage m1 = new XpaMessage(s1);
|
|
XpaMessage m2 = new XpaMessage(s1);
|
|
String s2 = "ATDT1;";
|
|
XpaMessage m3 = new XpaMessage(s2);
|
|
Assert.assertTrue("Messaes Equal", m1.equals(m2));
|
|
Assert.assertFalse("Messaes Not Equal", m1.equals(m3));
|
|
}
|
|
|
|
// test canned message generation
|
|
@Test
|
|
public void testGetDefaultInitMsg() {
|
|
String s = "ATX0E0;"; // expected value.
|
|
XpaMessage m = XpaMessage.getDefaultInitMsg();
|
|
Assert.assertNotNull("String Constructor Succeeded", m);
|
|
Assert.assertEquals("length", s.length(), m.getNumDataElements());
|
|
Assert.assertTrue("content", s.equals(m.toString()));
|
|
}
|
|
|
|
@Test
|
|
public void testGetEStopMsg() {
|
|
String s = "ATDT0;"; // expected value.
|
|
XpaMessage m = XpaMessage.getEStopMsg();
|
|
Assert.assertNotNull("String Constructor Succeeded", m);
|
|
Assert.assertEquals("length", s.length(), m.getNumDataElements());
|
|
Assert.assertTrue("content", s.equals(m.toString()));
|
|
}
|
|
|
|
@Test
|
|
public void testGetIdleMsg() {
|
|
String s = "ATDT#65*5;"; // expected value.
|
|
XpaMessage m = XpaMessage.getIdleMsg(65);
|
|
Assert.assertNotNull("String Constructor Succeeded", m);
|
|
Assert.assertEquals("length", s.length(), m.getNumDataElements());
|
|
Assert.assertTrue("content", s.equals(m.toString()));
|
|
}
|
|
|
|
@Test
|
|
public void testGetIncreaseSpeedMsg() {
|
|
String s = "ATDT#65*33333;"; // expected value.
|
|
XpaMessage m = XpaMessage.getIncSpeedMsg(65, 5);
|
|
Assert.assertNotNull("String Constructor Succeeded", m);
|
|
Assert.assertEquals("length", s.length(), m.getNumDataElements());
|
|
Assert.assertEquals("content", s, m.toString());
|
|
}
|
|
|
|
@Test
|
|
public void testGetDecreaseSpeedMsg() {
|
|
String s = "ATDT#65*11111;"; // expected value.
|
|
XpaMessage m = XpaMessage.getDecSpeedMsg(65, 5);
|
|
Assert.assertNotNull("String Constructor Succeeded", m);
|
|
Assert.assertEquals("length", s.length(), m.getNumDataElements());
|
|
Assert.assertEquals("content", s, m.toString());
|
|
}
|
|
|
|
@Test
|
|
public void testGetDirForwardMsg() {
|
|
String s = "ATDT#65*52;"; // expected value.
|
|
XpaMessage m = XpaMessage.getDirForwardMsg(65);
|
|
Assert.assertNotNull("String Constructor Succeeded", m);
|
|
Assert.assertEquals("length", s.length(), m.getNumDataElements());
|
|
Assert.assertTrue("content", s.equals(m.toString()));
|
|
}
|
|
|
|
@Test
|
|
public void testGetDirReverseMsg() {
|
|
String s = "ATDT#65*58;"; // expected value.
|
|
XpaMessage m = XpaMessage.getDirReverseMsg(65);
|
|
Assert.assertNotNull("String Constructor Succeeded", m);
|
|
Assert.assertEquals("length", s.length(), m.getNumDataElements());
|
|
Assert.assertTrue("content", s.equals(m.toString()));
|
|
}
|
|
|
|
@Test
|
|
public void testGetToggleFunctionMsg() {
|
|
String s = "ATDT#65**0;"; // expected value.
|
|
XpaMessage m = XpaMessage.getFunctionMsg(65, 0);
|
|
Assert.assertNotNull("String Constructor Succeeded", m);
|
|
Assert.assertEquals("length", s.length(), m.getNumDataElements());
|
|
Assert.assertTrue("content", s.equals(m.toString()));
|
|
}
|
|
|
|
// switch commands
|
|
@Test
|
|
public void testGetSwitchNormalMsg() {
|
|
String s = "ATDT#65#3;"; // expected value.
|
|
XpaMessage m = XpaMessage.getSwitchNormalMsg(65);
|
|
Assert.assertNotNull("String Constructor Succeeded", m);
|
|
Assert.assertEquals("length", s.length(), m.getNumDataElements());
|
|
Assert.assertTrue("content", s.equals(m.toString()));
|
|
}
|
|
|
|
@Test
|
|
public void testGetSwitchReveseMsg() {
|
|
String s = "ATDT#65#1;"; // expected value.
|
|
XpaMessage m = XpaMessage.getSwitchReverseMsg(65);
|
|
Assert.assertNotNull("String Constructor Succeeded", m);
|
|
Assert.assertEquals("length", s.length(), m.getNumDataElements());
|
|
Assert.assertTrue("content", s.equals(m.toString()));
|
|
}
|
|
|
|
@Test
|
|
public void testGetDeviceSettingMsg() {
|
|
String s = "ATDT*5*"; // expected value.
|
|
XpaMessage m = XpaMessage.getDeviceSettingMsg(5);
|
|
Assert.assertNotNull("String Constructor Succeeded", m);
|
|
Assert.assertEquals("length", s.length(), m.getNumDataElements());
|
|
Assert.assertTrue("content", s.equals(m.toString()));
|
|
}
|
|
|
|
@BeforeEach
|
|
public void setUp() {
|
|
JUnitUtil.setUp();
|
|
}
|
|
|
|
@AfterEach
|
|
public void tearDown() {
|
|
JUnitUtil.tearDown();
|
|
}
|
|
|
|
}
|