@Test
public void testEvents4JOptionPane() throws Exception {
final CountingPanelListener l = new CountingPanelListener();
instance.addPanelListener(l);
final String title = EnhancedPanelIT.class.getSimpleName();
final Runnable makeVisible = new Runnable() {
@Override
public void run() {
JOptionPane.showMessageDialog(
null, instance, title, JOptionPane.INFORMATION_MESSAGE);
}
};
for (int i = 1; i <= 3; i++) {
runOnEdt(makeVisible);
final JDialogOperator dialog = new JDialogOperator(title);
assertEquals(i, l.shown);
assertEquals(i - 1, l.hidden);
final JButtonOperator button = new JButtonOperator(dialog);
button.push();
button.getQueueTool().waitEmpty(WAIT_EMPTY);
assertEquals(i, l.shown);
assertEquals(i, l.hidden);
}
}