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

72 lines
2.1 KiB
Java

package jmri.jmrix.bidib;
//import jmri.util.JUnitAppender;
import org.junit.jupiter.api.*;
import jmri.util.JUnitUtil;
/**
* Tests for the BiDiBOpsModeProgrammer class
*
* @author Eckart Meyer Copyright (C) 2020
*/
public class BiDiBOpsModeProgrammerTest extends jmri.jmrix.AbstractOpsModeProgrammerTestBase {
private BiDiBSystemConnectionMemo memo;
@Override
@Test
public void testGetCanRead() {
// BiDiB supports railcom!
Assertions.assertTrue( programmer.getCanRead(), "can read");
}
@Override
@Test
@Disabled("Test requires further development")
public void testGetCanReadAddress() {
//Assert.assertFalse("can read address", programmer.getCanRead("1234"));
}
@Override
@Test
@Disabled("Test requires further development")
public void testGetCanWriteAddress() {
//Assert.assertTrue("can write address", programmer.getCanWrite("1234"));
}
@Test
@Override
public void testWriteCVNullListener() throws jmri.ProgrammerException {
super.testWriteCVNullListener();
// test may require further setup?
//JUnitAppender.suppressWarnMessageStartsWith(
// "The node is no longer registered. Skip send message to node:");
//JUnitAppender.suppressErrorMessageStartsWith(
// "writePom async failed on node:"); //since jbidibc 2.0.18
}
@Override
@BeforeEach
public void setUp() {
JUnitUtil.setUp();
// infrastructure objects
memo = new BiDiBSystemConnectionMemo();
memo.setBiDiBTrafficController(new TestBiDiBTrafficController(new BiDiBInterfaceScaffold()));
programmer = new BiDiBOpsModeProgrammer(5, memo.getBiDiBTrafficController());
}
@Override
@AfterEach
public void tearDown() {
programmer = null;
memo.dispose();
memo.getBiDiBTrafficController().terminate();
//JUnitUtil.resetWindows(false,false);
//JUnitUtil.clearShutDownManager(); // put in place because AbstractMRTrafficController implementing subclass was not terminated properly
JUnitUtil.tearDown();
}
}