protected void tearDown() throws Exception { // now close logix window TestHelper.disposeWindow(_logixTable.editLogixFrame, this); // now close logix actin window TestHelper.disposeWindow(_logixTable.f, this); JUnitUtil.resetInstanceManager(); super.tearDown(); apps.tests.Log4JFixture.tearDown(); }
@SuppressWarnings("unchecked") public void testShowAndClose() throws Exception { jmri.configurexml.ConfigXmlManager cm = new jmri.configurexml.ConfigXmlManager() {}; // load and display sample file java.io.File f = new java.io.File( "java/test/jmri/jmrit/display/layoutEditor/valid/SimpleLayoutEditorTest.xml"); cm.load(f); sleep(100); // time for internal listeners to calm down // Find new window by name (should be more distinctive, comes from sample file) LayoutEditor le = (LayoutEditor) jmri.util.JmriJFrame.getFrame("My Layout"); // It's up at this point, and can be manipulated // Ask to close window TestHelper.disposeWindow(le, this); // Dialog has popped up, so handle that. First, locate it. List<JDialog> dialogList = new DialogFinder(null).findAll(le); JDialog d = dialogList.get(0); // Find the button that deletes the panel AbstractButtonFinder finder = new AbstractButtonFinder("Delete Panel"); JButton button = (JButton) finder.find(d, 0); Assert.assertNotNull(button); // Click button to delete panel and close window getHelper().enterClickAndLeave(new MouseEventData(this, button)); // another dialog has popped up, so handle that by finding the "Yes - Delete" button. dialogList = new DialogFinder(null).findAll(le); d = dialogList.get(0); finder = new AbstractButtonFinder("Yes - Delete"); button = (JButton) finder.find(d, 0); Assert.assertNotNull(button); // Click to say yes, I really mean it. getHelper().enterClickAndLeave(new MouseEventData(this, button)); }
public void testCreateLogix() throws Exception { // Setting these two prevents any pop up message generated by the system trying to save // messages. jmri.InstanceManager.getDefault(jmri.UserPreferencesManager.class) .setPreferenceState("jmri.managers.DefaultUserMessagePreferences", "reminder", true); jmri.InstanceManager.getDefault(jmri.UserPreferencesManager.class) .setPreferenceState("jmri.jmrit.beantable.LogixTableAction", "remindSaveLogix", true); jmri.InstanceManager.store( new jmri.jmrit.signalling.EntryExitPairs(), jmri.jmrit.signalling.EntryExitPairs.class); try { _logixTable.prefMgr = jmri.InstanceManager.getDefault(jmri.UserPreferencesManager.class); _logixTable.actionPerformed(null); _logixTable.addPressed(null); _logixTable._addUserName.setText("TestLogix"); _logixTable._systemName.setText("TX"); _logixTable._autoSystemName.setSelected(false); _logixTable.createPressed(null); _logixTable.donePressed(null); // note: _logixTable.m.EDITCOL = BeanTableDataModel.DELETECOL _logixTable.m.setValueAt(rbx.getString("ButtonEdit"), 0, BeanTableDataModel.DELETECOL); _logixTable.newConditionalPressed(null); // _logixTable.helpPressed(null); _logixTable.conditionalUserName.setText("TestConditional"); _logixTable.updateConditionalPressed(null); // now close window // TestHelper.disposeWindow(_logixTable.editConditionalFrame,this); _logixTable.newConditionalPressed(null); _logixTable.conditionalTableModel.setValueAt( null, 0, LogixTableAction.ConditionalTableModel.BUTTON_COLUMN); for (int i = 0; i < 2; i++) { _logixTable.addVariablePressed(null); _logixTable._variableTypeBox.setSelectedIndex(Conditional.ITEM_TYPE_SENSOR); _logixTable._variableStateBox.setSelectedIndex(i); _logixTable._variableNameField.setText("IS" + i); _logixTable.updateVariablePressed(); } for (int i = 0; i < 2; i++) { _logixTable.addVariablePressed(null); _logixTable._variableTypeBox.setSelectedIndex(Conditional.ITEM_TYPE_TURNOUT); _logixTable._variableStateBox.setSelectedIndex(i); _logixTable._variableNameField.setText("Turnout" + i); _logixTable.updateVariablePressed(); } for (int i = 0; i < 2; i++) { _logixTable.addVariablePressed(null); _logixTable._variableTypeBox.setSelectedIndex(Conditional.ITEM_TYPE_LIGHT); _logixTable._variableStateBox.setSelectedIndex(i); _logixTable._variableNameField.setText("IL" + i); _logixTable.updateVariablePressed(); } for (int i = 0; i < 2; i++) { _logixTable.addVariablePressed(null); _logixTable._variableTypeBox.setSelectedIndex(Conditional.ITEM_TYPE_CONDITIONAL); _logixTable._variableStateBox.setSelectedIndex(i); _logixTable._variableNameField.setText("C" + i); _logixTable.updateVariablePressed(); } /* SignalHead code changed - test cannot be done this way Must implement from UI dialogs to get the right info to updateVariablePressed() for (int i=0; i<9; i++){ if (i==3 || i==7) { // lunar aspects continue; } _logixTable.addVariablePressed(null); _logixTable._variableTypeBox.setSelectedIndex(Conditional.ITEM_TYPE_SIGNALHEAD); _logixTable._variableStateBox.setSelectedIndex(i); _logixTable._variableNameField.setText("Signal"+i); _logixTable.updateVariablePressed(); } */ _logixTable.addActionPressed(null); _logixTable.cancelEditActionPressed(); _logixTable.addActionPressed(null); _logixTable._actionItemTypeBox.setSelectedIndex(Conditional.ITEM_TYPE_TURNOUT); _logixTable._actionTypeBox.setSelectedIndex(1); // ACTION_SET_TURNOUT _logixTable._actionOptionBox.setSelectedIndex(2); // on false _logixTable._actionNameField.setText("Turnout3"); _logixTable._actionBox.setSelectedIndex(0); // Turnout.CLOSED _logixTable.updateActionPressed(); /* // Test is done and turnoutManagerInstance gone by the time the timer goes off _logixTable.addActionPressed(null); _logixTable._actionItemTypeBox.setSelectedIndex(Conditional.ITEM_TYPE_TURNOUT); _logixTable._actionTypeBox.setSelectedIndex(2); // ACTION_DELAYED_TURNOUT _logixTable._actionOptionBox.setSelectedIndex(1); // on false _logixTable._actionNameField.setText("IT4"); _logixTable._actionBox.setSelectedIndex(1); // Turnout.THROWN _logixTable._shortActionString.setText("1"); // delay 1 sec _logixTable.updateActionPressed(); */ _logixTable.addActionPressed(null); _logixTable._actionItemTypeBox.setSelectedIndex(Conditional.ITEM_TYPE_TURNOUT); _logixTable._actionTypeBox.setSelectedIndex(3); // ACTION_LOCK_TURNOUT _logixTable._actionOptionBox.setSelectedIndex(0); // on false _logixTable._actionNameField.setText("Turnout5"); _logixTable._actionBox.setSelectedIndex(2); _logixTable.updateActionPressed(); _logixTable.updateConditionalPressed(null); // move on to another assertEquals( "State Variable count", 8, _logixTable._curConditional.getCopyOfStateVariables().size()); assertEquals("Action count", 2, _logixTable._curConditional.getCopyOfActions().size()); _logixTable.newConditionalPressed(null); // _logixTable.helpPressed(null); _logixTable.conditionalUserName.setText("SecondConditional"); _logixTable.updateConditionalPressed(null); Assert.assertEquals("Conditional count", 1, _logixTable._curLogix.getNumConditionals()); // _logixTable.donePressed(null); // note: _logixTable.m.EDITCOL = BeanTableDataModel.DELETECOL // _logixTable.m.setValueAt(rbx.getString("ButtonEdit"), 0, BeanTableDataModel.DELETECOL); _logixTable.conditionalTableModel.setValueAt( null, 0, LogixTableAction.ConditionalTableModel.BUTTON_COLUMN); _logixTable.conditionalUserName.setText("FirstConditional"); _logixTable.updateConditionalPressed(null); _logixTable.calculatePressed(null); _logixTable.donePressed(null); // now close window TestHelper.disposeWindow(_logixTable.editConditionalFrame, this); } catch (Exception ex) { ex.printStackTrace(); throw ex; } }