package jmri.jmrix.secsi; import jmri.implementation.AbstractTurnoutTestBase; import jmri.util.JUnitUtil; import org.junit.jupiter.api.*; /** * Tests for the jmri.jmrix.secsi.SerialTurnout class * * @author Bob Jacobsen */ public class SerialTurnoutTest extends AbstractTurnoutTestBase { private SerialTrafficControlScaffold tcis = null; @BeforeEach @Override public void setUp() { JUnitUtil.setUp(); // prepare an interface SecsiSystemConnectionMemo memo = new SecsiSystemConnectionMemo(); tcis = new SerialTrafficControlScaffold(memo); memo.setTrafficController(tcis); t = new SerialTurnout("VT4", "t4", memo); } @Override @AfterEach public void tearDown() { tcis = null; t = null; JUnitUtil.clearShutDownManager(); // put in place because AbstractMRTrafficController implementing subclass was not terminated properly JUnitUtil.tearDown(); } @Override public int numListeners() { return tcis.numListeners(); } @Override public void checkThrownMsgSent() { // tcis.sendSerialMessage(tcis.nextWrite(), null); // force outbound message; normally done by poll loop // Assert.assertTrue("message sent", tcis.outbound.size() > 0); // Assert.assertEquals("content", "41 54 08", tcis.outbound.elementAt(tcis.outbound.size() - 1).toString()); // THROWN message } @Override public void checkClosedMsgSent() { // tcis.sendSerialMessage(tcis.nextWrite(), null); // force outbound message; normally done by poll loop // Assert.assertTrue("message sent", tcis.outbound.size() > 0); // Assert.assertEquals("content", "41 54 00", tcis.outbound.elementAt(tcis.outbound.size() - 1).toString()); // CLOSED message } }