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

67 lines
1.9 KiB
Java

package jmri.jmrix.jmriclient;
import org.junit.Assert;
import org.junit.jupiter.api.*;
import jmri.util.JUnitUtil;
/**
* Tests for the jmri.jmrix.jmriclient.JMRIClientTurnout class
*
* @author Bob Jacobsen
* @author Paul Bender Copyright (C) 2017
*/
public class JMRIClientTurnoutTest extends jmri.implementation.AbstractTurnoutTestBase {
@Override
public int numListeners() {
return jcins.numListeners();
}
protected JMRIClientTrafficControlScaffold jcins;
@Override
public void checkClosedMsgSent() {
Assert.assertEquals("closed message", "TURNOUT "+ t.getSystemName()+ " CLOSED\n",
jcins.outbound.elementAt(jcins.outbound.size() - 1).toString());
}
@Override
public void checkThrownMsgSent() {
Assert.assertEquals("thrown message", "TURNOUT "+ t.getSystemName() + " THROWN\n",
jcins.outbound.elementAt(jcins.outbound.size() - 1).toString());
}
@Override
@Test
public void testDispose() {
t.setCommandedState(jmri.Turnout.CLOSED); // in case registration with TrafficController
// is deferred to after first use
t.dispose();
Assert.assertEquals("controller listeners remaining", 1, numListeners());
}
@Override
@BeforeEach
public void setUp() {
JUnitUtil.setUp();
JUnitUtil.resetInstanceManager();
JUnitUtil.initInternalSensorManager();
JUnitUtil.initInternalTurnoutManager();
jcins = new JMRIClientTrafficControlScaffold();
t = new JMRIClientTurnout(3, new JMRIClientSystemConnectionMemo(jcins));
}
@Override
@AfterEach
public void tearDown() {
JUnitUtil.clearShutDownManager(); // put in place because AbstractMRTrafficController implementing subclass was not terminated properly
JUnitUtil.tearDown();
jcins = null;
}
}