Files
JIMRI/java/test/jmri/jmrix/ipocs/protocol/packets/LevelCrossingStatusPacketTest.java
T
2026-06-17 14:00:51 +02:00

51 lines
1.5 KiB
Java

package jmri.jmrix.ipocs.protocol.packets;
import static org.junit.Assert.assertArrayEquals;
import static org.junit.jupiter.api.Assertions.assertEquals;
import java.nio.ByteBuffer;
import jmri.jmrix.ipocs.protocol.enums.RqLevelCrossingState;
import jmri.jmrix.ipocs.protocol.enums.RqReleaseState;
import jmri.util.JUnitUtil;
import org.junit.jupiter.api.*;
public class LevelCrossingStatusPacketTest {
private final byte[] testPacket = { RqLevelCrossingState.Opening.value, RqReleaseState.LocalControl.value, 0x01, 0x23 };
@Test
public void getIdTest() {
assertEquals(LevelCrossingStatusPacket.IDENT, new LevelCrossingStatusPacket().getId());
}
@Test
public void parseSpecificTest() {
LevelCrossingStatusPacket pkt = new LevelCrossingStatusPacket();
pkt.parseSpecific(ByteBuffer.wrap(testPacket));
assertEquals(RqLevelCrossingState.Opening, pkt.getState());
assertEquals(RqReleaseState.LocalControl, pkt.getReleaseState());
assertEquals(0x0123, pkt.getOperationTime());
}
@Test
public void serializeSpecificTest() {
LevelCrossingStatusPacket pkt = new LevelCrossingStatusPacket();
pkt.setState(RqLevelCrossingState.Opening);
pkt.setReleaseState(RqReleaseState.LocalControl);
pkt.setOperationTime((short)0x0123);
assertArrayEquals(testPacket, pkt.serializeSpecific());
}
@BeforeEach
public void setUp() {
JUnitUtil.setUp();
}
@AfterEach
public void tearDown() {
JUnitUtil.tearDown();
}
}