Files
JIMRI/java/test/jmri/jmrix/lenz/messageformatters/XNetTurnoutCommandMessageFormatterTest.java
T
2026-06-17 14:00:51 +02:00

60 lines
2.4 KiB
Java

package jmri.jmrix.lenz.messageformatters;
import jmri.jmrix.AbstractMessageFormatterTest;
import jmri.jmrix.Message;
import jmri.jmrix.lenz.XNetMessage;
import org.junit.jupiter.api.BeforeEach;
import org.junit.jupiter.api.Test;
import static org.junit.jupiter.api.Assertions.*;
/**
* Tests for the XNetTurnoutCommandMessageFormatter class.
* @author Paul Bender Copyright (C) 2024
*/
public class XNetTurnoutCommandMessageFormatterTest extends AbstractMessageFormatterTest {
// Test that the handlesMessage method returns true for a valid message
@Test
public void testHandlesMessageValid() {
XNetMessage message = XNetMessage.getTurnoutCommandMsg(5,false,true,true);
assertTrue(formatter.handlesMessage(message));
}
// Test that the handlesMessage method returns false for an invalid message
@Test
public void testHandlesMessageInvalid() {
Message message = new XNetMessage("01 04 05");
assertFalse(formatter.handlesMessage(message));
}
// Test that the formatMessage method returns the expected string
@Test
public void testFormatMessage() {
XNetMessage message;
message = XNetMessage.getTurnoutCommandMsg(5,false,true,true);
assertEquals( "Accessory Decoder Operations Request: Turnout Address 5(Base Address 1,Sub Address 0) Turn Output 1 On.",
formatter.formatMessage(message), "Monitor String");
message = XNetMessage.getTurnoutCommandMsg(5,true,false,true);
assertEquals( "Accessory Decoder Operations Request: Turnout Address 5(Base Address 1,Sub Address 0) Turn Output 0 On.",
formatter.formatMessage(message), "Monitor String");
message = XNetMessage.getTurnoutCommandMsg(5,false,true,false);
assertEquals( "Accessory Decoder Operations Request: Turnout Address 5(Base Address 1,Sub Address 0) Turn Output 1 Off.",
formatter.formatMessage(message), "Monitor String");
message = XNetMessage.getTurnoutCommandMsg(5,true,false,false);
assertEquals( "Accessory Decoder Operations Request: Turnout Address 5(Base Address 1,Sub Address 0) Turn Output 0 Off.",
formatter.formatMessage(message), "Monitor String");
}
@Override
@BeforeEach
public void setUp() {
super.setUp(); // setup JUnit
formatter = new XNetTurnoutCommandMessageFormatter();
}
}