X-Git-Url: http://source.jalview.org/gitweb/?a=blobdiff_plain;f=test%2Fjalview%2Fgui%2FProgressBarTest.java;h=a77942c070a37a7ed668fbb2c71ea1e2c4bdbd42;hb=8397031503322c9abe3c0f87066a3bf3b4600656;hp=a1715e96d811dac7910b5ca0ccb2b6c8317f5457;hpb=5f4e1e4c330b045e9c8bce28ee132a0fca3834d8;p=jalview.git diff --git a/test/jalview/gui/ProgressBarTest.java b/test/jalview/gui/ProgressBarTest.java index a1715e9..a77942c 100644 --- a/test/jalview/gui/ProgressBarTest.java +++ b/test/jalview/gui/ProgressBarTest.java @@ -29,6 +29,7 @@ import java.awt.GridLayout; import javax.swing.JLabel; import javax.swing.JPanel; +import javax.swing.SwingUtilities; import org.testng.Assert; import org.testng.annotations.BeforeClass; @@ -119,18 +120,33 @@ public class ProgressBarTest * @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); } } }