X-Git-Url: http://source.jalview.org/gitweb/?a=blobdiff_plain;f=test%2Fjalview%2Fio%2Fcache%2FJvCacheableInputBoxTest.java;h=35ace4717091b96be61730b8aabcc4496e85d9a5;hb=2de98d293f03069b1585e64b27666b2e3e801137;hp=6c79f3149b955fa8f021b8a7c4fb4de56b940123;hpb=7c6dc8ce96f205c9330592ac18d5e9e6ef9407e0;p=jalview.git diff --git a/test/jalview/io/cache/JvCacheableInputBoxTest.java b/test/jalview/io/cache/JvCacheableInputBoxTest.java index 6c79f31..35ace47 100644 --- a/test/jalview/io/cache/JvCacheableInputBoxTest.java +++ b/test/jalview/io/cache/JvCacheableInputBoxTest.java @@ -1,7 +1,30 @@ +/* + * Jalview - A Sequence Alignment Editor and Viewer ($$Version-Rel$$) + * Copyright (C) $$Year-Rel$$ The Jalview Authors + * + * This file is part of Jalview. + * + * Jalview is free software: you can redistribute it and/or + * modify it under the terms of the GNU General Public License + * as published by the Free Software Foundation, either version 3 + * of the License, or (at your option) any later version. + * + * Jalview is distributed in the hope that it will be useful, but + * WITHOUT ANY WARRANTY; without even the implied warranty + * of MERCHANTABILITY or FITNESS FOR A PARTICULAR + * PURPOSE. See the GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with Jalview. If not, see . + * The Jalview Authors are detailed in the 'AUTHORS' file. + */ 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; @@ -13,8 +36,8 @@ public class JvCacheableInputBoxTest private static final String TEST_CACHE_KEY = "CACHE.UNIT_TEST"; - private JvCacheableInputBox cacheBox = new JvCacheableInputBox( - TEST_CACHE_KEY); + private JvCacheableInputBox cacheBox = new JvCacheableInputBox<>( + TEST_CACHE_KEY, 20); @BeforeClass(alwaysRun = true) private void setUpCache() @@ -34,11 +57,19 @@ public class JvCacheableInputBoxTest try { - // This delay is essential to prevent the - // assertion below from executing before - // swing thread finishes updating the combo-box - Thread.sleep(100); - } catch (InterruptedException e) + SwingUtilities.invokeAndWait(() -> { + 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(); } @@ -53,13 +84,21 @@ public class JvCacheableInputBoxTest cacheBox.addItem(testInput); cacheBox.setSelectedItem(testInput); cacheBox.updateCache(); + try { - // This 1ms delay is essential to prevent the - // assertion below from executing before - // cacheBox.updateCache() finishes updating the cache - Thread.sleep(100); - } catch (InterruptedException e) + SwingUtilities.invokeAndWait(() -> { + 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(); }