From: Ben Soares Date: Tue, 18 Jul 2023 15:58:01 +0000 (+0100) Subject: JAL-4513 now re-add the SwingUtilities.invokeAndWait() with minimal sleep X-Git-Tag: Release_2_11_3_0~10^2~3 X-Git-Url: http://source.jalview.org/gitweb/?a=commitdiff_plain;ds=inline;h=refs%2Fheads%2Fbug%2FJAL-4513_JvCacheableInputBoxTest_flaky_on_build_server;p=jalview.git JAL-4513 now re-add the SwingUtilities.invokeAndWait() with minimal sleep --- diff --git a/test/jalview/io/cache/JvCacheableInputBoxTest.java b/test/jalview/io/cache/JvCacheableInputBoxTest.java index 3ed15ac..35ace47 100644 --- a/test/jalview/io/cache/JvCacheableInputBoxTest.java +++ b/test/jalview/io/cache/JvCacheableInputBoxTest.java @@ -20,8 +20,11 @@ */ package jalview.io.cache; +import java.lang.reflect.InvocationTargetException; import java.util.LinkedHashSet; +import javax.swing.SwingUtilities; + import org.junit.Assert; import org.testng.annotations.BeforeClass; import org.testng.annotations.Test; @@ -52,28 +55,24 @@ public class JvCacheableInputBoxTest cacheBox.addItem(testInput); cacheBox.setSelectedItem(testInput); - /* try { SwingUtilities.invokeAndWait(() -> { - */ - try - { - // This delay is essential to prevent the - // assertion below from executing before - // swing thread finishes updating the combo-box - Thread.sleep(10); - } catch (InterruptedException e) + try + { + // This delay is essential to prevent the + // assertion below from executing before + // swing thread finishes updating the combo-box + Thread.sleep(1); + } catch (InterruptedException e) + { + e.printStackTrace(); + } + }); + } catch (InvocationTargetException | InterruptedException e) { e.printStackTrace(); } - ; /* - }); - } catch (InvocationTargetException | InterruptedException e) - { - e.printStackTrace(); - } - */ userInput = cacheBox.getUserInput(); Assert.assertEquals(testInput, userInput); } @@ -86,27 +85,23 @@ public class JvCacheableInputBoxTest cacheBox.setSelectedItem(testInput); cacheBox.updateCache(); - /* try { SwingUtilities.invokeAndWait(() -> { - */ - try - { - // This delay is to let - // cacheBox.updateCache() finish updating the cache - Thread.sleep(1); - } catch (InterruptedException e) + try + { + // This delay is to let + // cacheBox.updateCache() finish updating the cache + Thread.sleep(1); + } catch (InterruptedException e) + { + e.printStackTrace(); + } + }); + } catch (InvocationTargetException | InterruptedException e) { e.printStackTrace(); } - ; /* - }); - } catch (InvocationTargetException | InterruptedException e) - { - e.printStackTrace(); - } - */ LinkedHashSet foundCache = appCache .getAllCachedItemsFor(TEST_CACHE_KEY); Assert.assertTrue(foundCache.contains(testInput));