Files
JIMRI/java/test/jmri/jmrix/can/cbus/swing/eventtable/CbusEventTablePrintActionTest.java
2026-06-17 14:00:51 +02:00

93 lines
2.9 KiB
Java

package jmri.jmrix.can.cbus.swing.eventtable;
import java.io.File;
import static org.junit.jupiter.api.Assertions.*;
import jmri.jmrix.can.CanSystemConnectionMemo;
import jmri.jmrix.can.cbus.eventtable.CbusEventTableDataModel;
import jmri.util.JUnitUtil;
import org.junit.jupiter.api.*;
import org.junit.jupiter.api.condition.DisabledIfSystemProperty;
import org.junit.jupiter.api.io.TempDir;
import org.netbeans.jemmy.operators.JButtonOperator;
import org.netbeans.jemmy.operators.JFrameOperator;
/**
*
* @author Paul Bender Copyright (C) 2017
* @author Steve Young Copyright (C) 2020
*/
public class CbusEventTablePrintActionTest {
@Test
public void testCTor() {
CbusEventTableDataModel eventModel = new CbusEventTableDataModel(memo,0);
CbusEventTablePrintAction t = new CbusEventTablePrintAction("PreviewTable",
eventModel,"CBUS Event Table Print Preview Test",true);
assertNotNull(t);
eventModel.skipSaveOnDispose();
eventModel.dispose();
}
@Test
@DisabledIfSystemProperty(named ="java.awt.headless", matches ="true")
public void testPreview() {
CbusEventTableDataModel eventModel = new CbusEventTableDataModel(memo,0);
eventModel.provideEvent(0, 7);
eventModel.provideEvent(256, 77).setName("Event Name");
CbusEventTablePrintAction t = new CbusEventTablePrintAction("PreviewTable",
eventModel,"CBUS Event Table Print Preview Test",true);
Thread dialog_thread = new Thread(() -> {
JFrameOperator jfo = new JFrameOperator( "CBUS Event Table Print Preview Test" );
new JButtonOperator(jfo,"Close").doClick();
});
dialog_thread.setName("Close Preview Window Thread");
dialog_thread.start();
t.actionPerformed(null);
JUnitUtil.waitFor(()->{return !(dialog_thread.isAlive());}, "Close Preview Window Thread closed");
eventModel.skipSaveOnDispose();
eventModel.dispose();
}
private CanSystemConnectionMemo memo = null;
@BeforeEach
public void setUp(@TempDir File tempDir) {
JUnitUtil.setUp();
try {
JUnitUtil.resetProfileManager( new jmri.profile.NullProfile( tempDir));
} catch ( java.io.IOException e) {
fail("Exception creating temp. user folder");
}
memo = new CanSystemConnectionMemo();
memo.setProtocol(jmri.jmrix.can.CanConfigurationManager.MERGCBUS);
memo.configureManagers();
}
@AfterEach
public void tearDown() {
Assertions.assertNotNull(memo);
memo.dispose();
JUnitUtil.deregisterBlockManagerShutdownTask();
JUnitUtil.tearDown();
}
// private static final Logger log = LoggerFactory.getLogger(CbusEventTablePrintActionTest.class);
}