78 lines
2.1 KiB
Java
78 lines
2.1 KiB
Java
package jmri.jmrix.roco.z21;
|
|
|
|
import static org.junit.jupiter.api.Assertions.assertNotNull;
|
|
|
|
import jmri.util.JUnitUtil;
|
|
|
|
import org.junit.jupiter.api.*;
|
|
|
|
/**
|
|
* Tests for the jmri.jmrix.roco.z21.z21XPressNetTunnel class
|
|
*
|
|
* @author Paul Bender
|
|
*/
|
|
public class Z21XPressNetTunnelTest {
|
|
|
|
private Z21SystemConnectionMemo memo = null;
|
|
private Z21InterfaceScaffold tc = null;
|
|
private Z21XPressNetTunnel tunnel = null;
|
|
|
|
@Test
|
|
public void testCtor() {
|
|
assertNotNull(tunnel);
|
|
}
|
|
|
|
@Test
|
|
public void testGetStreamPortController() {
|
|
assertNotNull(tunnel.getStreamPortController());
|
|
}
|
|
|
|
private jmri.jmrix.lenz.XNetTrafficController packets;
|
|
|
|
@BeforeEach
|
|
public void setUp() {
|
|
JUnitUtil.setUp();
|
|
JUnitUtil.resetProfileManager();
|
|
JUnitUtil.initConfigureManager();
|
|
|
|
memo = new Z21SystemConnectionMemo();
|
|
tc = new Z21InterfaceScaffold() {
|
|
@Override
|
|
protected void terminate() {
|
|
}
|
|
};
|
|
memo.setTrafficController(tc);
|
|
|
|
tunnel = new Z21XPressNetTunnel(memo) {
|
|
@Override
|
|
void setStreamPortController(jmri.jmrix.lenz.XNetStreamPortController x) {
|
|
xsc = new Z21XNetStreamPortController(x.getInputStream(), x.getOutputStream(), x.getCurrentPortName()) {
|
|
@Override
|
|
public void configure() {
|
|
// connect to a packetizing traffic controller
|
|
packets = new jmri.jmrix.lenz.XNetInterfaceScaffold(new jmri.jmrix.lenz.LenzCommandStation());
|
|
packets.connectPort(this);
|
|
this.getSystemConnectionMemo().setXNetTrafficController(packets);
|
|
}
|
|
};
|
|
}
|
|
};
|
|
}
|
|
|
|
@AfterEach
|
|
public void tearDown() {
|
|
if ( packets != null ) {
|
|
packets.terminateThreads();
|
|
}
|
|
packets = null;
|
|
tunnel.dispose();
|
|
tunnel = null;
|
|
tc.terminateThreads();
|
|
tc = null;
|
|
memo.getTrafficController().terminateThreads();
|
|
memo = null;
|
|
JUnitUtil.tearDown();
|
|
}
|
|
|
|
}
|