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

105 lines
2.4 KiB
Java

package jmri.jmrix;
import jmri.util.JUnitUtil;
import org.junit.Assert;
import org.junit.jupiter.api.*;
/**
* Tests for AbstractMRTrafficController.
*
* @author Paul Bender Copyright (C) 2016
*/
public class AbstractMRTrafficControllerTest {
// derived classes should set the value of tc appropriately.
protected AbstractMRTrafficController tc;
@Test
public void testCtor() {
Assert.assertNotNull(tc);
}
@Test
public void testAddNullListener() {
Assert.assertThrows(NullPointerException.class, () -> tc.addListener(null));
}
@Test
public void testPortReadyToSendNullController() {
Assert.assertFalse(tc.portReadyToSend(null));
}
@Test
public void testGetLastSenderNull() {
// new tc, so getLastSender should return null.
Assert.assertNull(tc.getLastSender());
}
@Test
public void testHasTimeouts() {
// new tc, so hasTimeouts should return false.
Assert.assertFalse(tc.hasTimeouts());
}
@Test
public void testStatus() {
// new tc, but unconnected, so status should return false.
Assert.assertFalse(tc.status());
}
@BeforeEach
public void setUp() {
JUnitUtil.setUp();
JUnitUtil.resetInstanceManager();
tc = new AbstractMRTrafficController() {
@Override
protected void forwardMessage(AbstractMRListener client, AbstractMRMessage m) {
}
@Override
protected AbstractMRMessage pollMessage() {
return null;
}
@Override
protected AbstractMRListener pollReplyHandler() {
return null;
}
@Override
protected AbstractMRMessage enterProgMode() {
return null;
}
@Override
protected AbstractMRMessage enterNormalMode() {
return null;
}
@Override
protected void forwardReply(AbstractMRListener client, AbstractMRReply m) {
}
@Override
protected AbstractMRReply newReply() {
return null;
}
@Override
protected boolean endOfMessage(AbstractMRReply r) {
return true;
}
};
}
@AfterEach
public void tearDown() {
tc.terminateThreads();
JUnitUtil.tearDown();
}
}