/*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.9.0b1)
- * Copyright (C) 2015 The Jalview Authors
+ * Jalview - A Sequence Alignment Editor and Viewer ($$Version-Rel$$)
+ * Copyright (C) $$Year-Rel$$ The Jalview Authors
*
* This file is part of Jalview.
*
import javax.swing.JLabel;
import javax.swing.JPanel;
+import javax.swing.SwingUtilities;
import org.testng.Assert;
+import org.testng.annotations.BeforeClass;
import org.testng.annotations.Test;
public class ProgressBarTest
{
+ @BeforeClass(alwaysRun = true)
+ public void setUpJvOptionPane()
+ {
+ JvOptionPane.setInteractiveMode(false);
+ JvOptionPane.setMockResponse(JvOptionPane.CANCEL_OPTION);
+ }
+
private JPanel statusPanel;
private JLabel statusBar;
* @param layout
* @param msgs
*/
- private void verifyProgress(GridLayout layout, String[] msgs)
+ private void verifyProgress(final GridLayout layout, final String[] msgs)
{
- int msgCount = msgs.length;
- assertEquals(1 + msgCount, layout.getRows());
- assertEquals(msgCount, statusPanel.getComponentCount());
- int i = 0;
- for (Component c : statusPanel.getComponents())
+ try
+ {
+ SwingUtilities.invokeAndWait(new Runnable()
+ {
+ @Override
+ public void run()
+ {
+ int msgCount = msgs.length;
+ assertEquals(1 + msgCount, layout.getRows());
+ assertEquals(msgCount, statusPanel.getComponentCount());
+ int i = 0;
+ for (Component c : statusPanel.getComponents())
+ {
+ assertTrue(c instanceof JPanel);
+ assertTrue(((JPanel) c).getComponent(0) instanceof JLabel);
+ assertEquals(msgs[i++],
+ ((JLabel) ((JPanel) c).getComponent(0)).getText());
+ }
+ }
+ });
+ } catch (Exception e)
{
- assertTrue(c instanceof JPanel);
- assertTrue(((JPanel) c).getComponent(0) instanceof JLabel);
- assertEquals(msgs[i++],
- ((JLabel) ((JPanel) c).getComponent(0)).getText());
+ throw new AssertionError(
+ "Unexpected exception waiting for progress bar validation",
+ e);
}
}
}