Files
JIMRI/java/test/apps/JmriFacelessTest.java
2026-06-17 14:00:51 +02:00

69 lines
1.8 KiB
Java

package apps;
import jmri.util.JUnitUtil;
import org.junit.jupiter.api.*;
/**
*
* Tests for the JmriFaceless application.
*
* @author Paul Bender Copyright (C) 2016
*/
public class JmriFacelessTest {
@Test
public void testCtor() {
String Args[] = {};
AppsBase a = new JmriFaceless(Args) {
// force the application to not actually start.
// Just checking construction.
@Override
public void start() {
}
@Override
protected void configureProfile() {
JUnitUtil.resetInstanceManager();
}
@Override
protected void installConfigurationManager() {
JUnitUtil.initConfigureManager();
JUnitUtil.initDefaultUserMessagePreferences();
}
@Override
protected void installManagers() {
JUnitUtil.initInternalTurnoutManager();
JUnitUtil.initInternalLightManager();
JUnitUtil.initInternalSensorManager();
JUnitUtil.initRouteManager();
JUnitUtil.initMemoryManager();
JUnitUtil.initDebugThrottleManager();
}
};
Assertions.assertNotNull(a);
// shutdown the application
AppsBase.handleQuit();
JUnitUtil.waitFor( () ->
((jmri.managers.DefaultShutDownManager)jmri.InstanceManager.getDefault(jmri.ShutDownManager.class)).
isShutDownComplete(),"Shutdown complete");
}
@BeforeEach
public void setUp() {
JUnitUtil.setUp();
JUnitUtil.resetApplication();
JUnitUtil.resetProfileManager();
}
@AfterEach
public void tearDown() {
JUnitUtil.resetApplication();
JUnitUtil.clearShutDownManager();
JUnitUtil.tearDown();
}
}