Files
JIMRI/java/test/jmri/jmrit/operations/locations/tools/TrackDestinationEditFrameTest.java
T
2026-06-17 14:00:51 +02:00

95 lines
3.3 KiB
Java

package jmri.jmrit.operations.locations.tools;
import java.awt.GraphicsEnvironment;
import org.junit.Assert;
import org.junit.Assume;
import org.junit.jupiter.api.Test;
import jmri.InstanceManager;
import jmri.jmrit.operations.OperationsTestCase;
import jmri.jmrit.operations.locations.*;
import jmri.jmrit.operations.locations.gui.YardEditFrame;
import jmri.util.JUnitOperationsUtil;
import jmri.util.JUnitUtil;
import jmri.util.swing.JemmyUtil;
/**
*
* @author Paul Bender Copyright (C) 2017
*/
public class TrackDestinationEditFrameTest extends OperationsTestCase {
@Test
public void testCTor() {
Assume.assumeFalse(GraphicsEnvironment.isHeadless());
JUnitOperationsUtil.initOperationsData();
LocationManager lmanager = InstanceManager.getDefault(LocationManager.class);
Location loc = lmanager.getLocationByName("North Industries");
Assert.assertNotNull("exists", loc);
Track track = loc.getTrackByName("NI Yard", null);
YardEditFrame yef = new YardEditFrame();
yef.initComponents(track);
TrackDestinationEditFrame t = new TrackDestinationEditFrame();
t.initComponents(yef);
Assert.assertNotNull("exists",t);
JUnitUtil.dispose(t);
}
@Test
public void testButtons() {
Assume.assumeFalse(GraphicsEnvironment.isHeadless());
JUnitOperationsUtil.initOperationsData();
LocationManager lmanager = InstanceManager.getDefault(LocationManager.class);
Location loc = lmanager.getLocationByName("North Industries");
Assert.assertNotNull("exists", loc);
Track track = loc.addTrack("NI Interchange", Track.INTERCHANGE);
YardEditFrame yef = new YardEditFrame();
yef.initComponents(track);
TrackDestinationEditFrame tdef = new TrackDestinationEditFrame();
tdef.initComponents(yef);
JemmyUtil.waitFor(tdef);
JemmyUtil.enterClickAndLeaveThreadSafe(tdef.checkDestinationsButton);
// the save should have opened a dialog window
JemmyUtil.pressDialogButton(tdef, Bundle.getMessage("WarningCarMayNotMove"), "Cancel");
JemmyUtil.waitFor(tdef);
// Confirm default
Assert.assertFalse("Only cars with destinations", track.isOnlyCarsWithFinalDestinationEnabled());
JemmyUtil.enterClickAndLeave(tdef.onlyCarsWithFD);
JemmyUtil.enterClickAndLeave(tdef.saveButton);
Assert.assertTrue("Only cars with destinations", track.isOnlyCarsWithFinalDestinationEnabled());
JUnitUtil.dispose(tdef);
}
@Test
public void testCloseWindowOnSave() {
Assume.assumeFalse(GraphicsEnvironment.isHeadless());
Location loc = JUnitOperationsUtil.createOneNormalLocation("Test Location");
Track track = loc.addTrack("Interchange", Track.INTERCHANGE);
YardEditFrame yef = new YardEditFrame();
yef.initComponents(track);
TrackDestinationEditFrame f = new TrackDestinationEditFrame();
f.initComponents(yef);
JUnitOperationsUtil.testCloseWindowOnSave(f.getTitle());
}
// private static final Logger log = LoggerFactory.getLogger(TrackDestinationEditFrameTest.class);
}