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

74 lines
2.2 KiB
Java

package jmri.jmrix.dccpp;
import jmri.util.JUnitUtil;
import org.junit.jupiter.api.*;
import static org.junit.jupiter.api.Assertions.*;
/**
* JUnit tests for the DCCppSerialPortController class.
*
* @author Paul Bender Copyright (C) 2016
*/
public class DCCppSerialPortControllerTest extends jmri.jmrix.AbstractSerialPortControllerTestBase {
@Override
@BeforeEach
public void setUp(){
JUnitUtil.setUp();
DCCppInterfaceScaffold tc = new DCCppInterfaceScaffold(new DCCppCommandStation());
new DCCppSystemConnectionMemo(tc);
apc = new DCCppSerialPortController(){
@Override
public boolean status(){
return true;
}
@Override
public void configure(){
}
@Override
public java.io.DataInputStream getInputStream(){
return null;
}
@Override
public java.io.DataOutputStream getOutputStream(){
return null;
}
/**
* Get an array of valid baud rates; used to display valid options.
*/
@Override
public String[] validBaudRates(){
return new String[]{"9600"};
}
/**
* Open a specified port. The appName argument is to be provided to the
* underlying OS during startup so that it can show on status displays, etc
*/
@Override
public String openPort(String portName, String appName){
return "";
}
};
}
@Test
public void testSetManufacturerLegacyMigration() {
apc.setManufacturer("DCC++");
assertEquals("DCC-EX", apc.getManufacturer(), "legacy DCC++ manufacturer should migrate to DCC-EX");
apc.setManufacturer("DCC-EX");
assertEquals("DCC-EX", apc.getManufacturer(), "DCC-EX manufacturer should be stored as-is");
}
@Override
@AfterEach
public void tearDown(){
JUnitUtil.clearShutDownManager(); // put in place because AbstractMRTrafficController implementing subclass was not terminated properly
JUnitUtil.tearDown();
}
}