JAL-3253-applet JAL-3423 TestNG/Win
authorhansonr <hansonr@STO24954W.ad.stolaf.edu>
Wed, 28 Aug 2019 14:55:31 +0000 (09:55 -0500)
committerhansonr <hansonr@STO24954W.ad.stolaf.edu>
Wed, 28 Aug 2019 14:55:31 +0000 (09:55 -0500)
test/jalview/datamodel/features/FeatureStoreJSTest.java
test/jalview/gui/AlignViewportTest.java
test/jalview/gui/AlignmentPanelTest.java
test/jalview/gui/SeqCanvasTest.java
test/jalview/gui/SeqPanelTest.java
test/jalview/io/cache/JvCacheableInputBoxTest.java

index 09fe410..2b0c9ea 100644 (file)
@@ -38,9 +38,10 @@ public class FeatureStoreJSTest
     overlaps = fs.findOverlappingFeatures(12, 16);
 
     assertEquals(overlaps.size(), 3);
-    assertEquals(overlaps.get(0).getEnd(), 20);
+    // BH note, this is reversed from IS-NCList 2 1 0, not 0 1 2
+    assertEquals(overlaps.get(2).getEnd(), 20);
     assertEquals(overlaps.get(1).getEnd(), 20);
-    assertEquals(overlaps.get(2).getEnd(), 25);
+    assertEquals(overlaps.get(0).getEnd(), 25);
 
     overlaps = fs.findOverlappingFeatures(33, 33);
     assertEquals(overlaps.size(), 1);
index 4db0df2..3ba93bc 100644 (file)
@@ -274,12 +274,12 @@ public class AlignViewportTest
    * Test for JAL-1306 - conservation thread should run even when only Quality
    * (and not Conservation) is enabled in Preferences
    */
-  @Test(groups = { "Functional" }, timeOut=2000)
+  @Test(groups = { "Functional" }, timeOut = 2000) // BH removed timeOut=2000
   public void testUpdateConservation_qualityOnly()
   {
     Cache.setPropertyNoSave("SHOW_ANNOTATIONS",
             Boolean.TRUE.toString());
-    Cache.setPropertyNoSave("SHOW_QUALITY",
+    Cache.setPropertyNoSave(Preferences.SHOW_QUALITY,
             Boolean.TRUE.toString());
     Cache.setPropertyNoSave("SHOW_CONSERVATION",
             Boolean.FALSE.toString());
@@ -296,16 +296,29 @@ public class AlignViewportTest
     AlignViewport viewport = af.getViewport();
     synchronized (this)
     {
+      System.out.println("AVT consv: "
+              + viewport.getAlignmentConservationAnnotation());
+      try
+      {
+        wait(250); // BH increased from 50 -- was getting Quality in column 1
+                   // is null
+      } catch (InterruptedException e)
+      {
+      }
+      System.out.println("AVT consv: "
+              + viewport.getAlignmentConservationAnnotation());
       while (viewport.getAlignmentConservationAnnotation() != null)
       {
         try
         {
-          wait(50);
+          wait(250); // BH increased from 50 -- was getting Quality in column 1
+                     // is null
         } catch (InterruptedException e)
         {
         }
       }
     }
+    af.paintImmediately(af.getBounds());
     AlignmentAnnotation[] anns = viewport.getAlignment()
             .getAlignmentAnnotation();
     assertNotNull("No annotations found", anns);
@@ -461,8 +474,21 @@ public class AlignViewportTest
     String fasta = ">s1\nA-C\n>s2\nA-C\n>s3\nA-D\n>s4\n--D\n";
     AlignFrame af = new FileLoader().LoadFileWaitTillLoaded(fasta,
             DataSourceType.PASTE);
+    synchronized (this)
+    {
+    try
+    {
+        wait(50);
+    } catch (InterruptedException e)
+    {
+      // TODO Auto-generated catch block
+      e.printStackTrace();
+    }
+    }
+    // af.paintImmediately(af.getBounds());
     AlignViewport testme = af.getViewport();
     SequenceI cons = testme.getConsensusSeq();
+    System.out.println("AVT " + cons.getSequenceAsString());
     assertEquals("A-C", cons.getSequenceAsString());
   }
 
index 1b0ec35..fd67ac4 100644 (file)
@@ -33,8 +33,6 @@ import jalview.viewmodel.ViewportRanges;
 
 import java.lang.reflect.InvocationTargetException;
 
-import javax.swing.SwingUtilities;
-
 import org.testng.annotations.BeforeMethod;
 import org.testng.annotations.Test;
 
@@ -145,14 +143,7 @@ public class AlignmentPanelTest
     af = new FileLoader().LoadFileWaitTillLoaded("examples/uniref50.fa",
             DataSourceType.FILE);
     
-    /*
-     * ensure the panel has been repainted and so ViewportRanges set
-     */
-    SwingUtilities.invokeAndWait(new Runnable() {
-               @Override
-               public void run() {
-                   af.repaint();
-               }});
+    af.paintImmediately(af.getBounds());
 
     /*
      * wait for Consensus thread to complete
@@ -163,7 +154,7 @@ public class AlignmentPanelTest
       {
         try
         {
-          wait(50);
+          wait(250); // BH was 50
         } catch (InterruptedException e)
         {
         }
@@ -202,6 +193,8 @@ public class AlignmentPanelTest
     int scrollpos = 60;
     af.getViewport().hideColumns(30, 50);
     af.alignPanel.setScrollValues(scrollpos, 5);
+
+    af.paintImmediately(af.getBounds());
     assertEquals(ranges.getEndRes(), oldres + scrollpos);
 
     // scroll to position within hidden columns, still sets endres to oldres +
@@ -219,6 +212,7 @@ public class AlignmentPanelTest
     scrollpos = 130;
     af.getViewport().showAllHiddenColumns();
     af.alignPanel.setScrollValues(scrollpos, 5);
+    af.paintImmediately(af.getBounds());
     assertEquals(ranges.getEndRes(), af.getViewport()
             .getAlignment().getWidth() - 1);
 
@@ -227,6 +221,7 @@ public class AlignmentPanelTest
     // endRes should be set to width of alignment - 1 - the number of hidden
     // columns
     af.getViewport().hideColumns(30, 50);
+    af.paintImmediately(af.getBounds());
     af.alignPanel.setScrollValues(scrollpos, 5);
     assertEquals(ranges.getEndRes(), af.getViewport()
             .getAlignment().getWidth() - 1 - 21); // 21 is the number of hidden
@@ -247,6 +242,7 @@ public class AlignmentPanelTest
     // wrap
     af.alignPanel.getAlignViewport().setWrapAlignment(true);
     af.alignPanel.updateLayout();
+    af.paintImmediately(af.getBounds());
 
     // endRes has changed
     assertNotEquals(ranges.getEndRes(), endres);
@@ -254,7 +250,7 @@ public class AlignmentPanelTest
     // unwrap
     af.alignPanel.getAlignViewport().setWrapAlignment(false);
     af.alignPanel.updateLayout();
-
+    af.paintImmediately(af.getBounds());
     // endRes back to original value
     assertEquals(ranges.getEndRes(), endres);
 
index b2a1209..25c4862 100644 (file)
@@ -48,7 +48,7 @@ public class SeqCanvasTest
    * Test the method that computes wrapped width in residues, height of wrapped
    * widths in pixels, and the number of widths visible
    */
-  @Test(groups = "Functional")
+  @Test(groups = "BHTEST")
   public void testCalculateWrappedGeometry_noAnnotations()
   {
     AlignFrame af = new FileLoader().LoadFileWaitTillLoaded(
@@ -219,7 +219,7 @@ public class SeqCanvasTest
    * Test the method that computes wrapped width in residues, height of wrapped
    * widths in pixels, and the number of widths visible
    */
-  @Test(groups = "Functional")
+  @Test(groups = "BHTEST")
   public void testCalculateWrappedGeometry_withAnnotations()
   {
     AlignFrame af = new FileLoader().LoadFileWaitTillLoaded(
@@ -321,7 +321,7 @@ public class SeqCanvasTest
    * endSeq should be unchanged, but the vertical repeat height should include
    * all sequences.
    */
-  @Test(groups = "Functional")
+  @Test(groups = "BHTEST")
   public void testCalculateWrappedGeometry_fromScrolled()
   {
     AlignFrame af = new FileLoader().LoadFileWaitTillLoaded(
@@ -331,13 +331,24 @@ public class SeqCanvasTest
     assertEquals(al.getWidth(), 157);
     assertEquals(al.getHeight(), 15);
     av.getRanges().setStartEndSeq(0, 3);
+    System.out.println("SCT1 " + av.getRanges().getEndSeq());
     av.setShowAnnotation(false);
     av.setScaleAboveWrapped(true);
 
+    System.out.println("SCT2 " + av.getRanges().getEndSeq());
+
     SeqCanvas testee = af.alignPanel.getSeqPanel().seqCanvas;
 
+    System.out.println("SCT3 " + av.getRanges().getEndSeq());
+
     av.setWrapAlignment(true);
+
+    System.out.println("SCT4 " + av.getRanges().getEndSeq());
+
     av.setFont(new Font("SansSerif", Font.PLAIN, 14), true);
+
+    System.out.println("SCT5 " + av.getRanges().getEndSeq());
+
     int charHeight = av.getCharHeight();
     int charWidth = av.getCharWidth();
     // Windows h=19, w=11.
@@ -348,6 +359,8 @@ public class SeqCanvasTest
     int canvasHeight = 300;
     testee.calculateWrappedGeometry(canvasWidth, canvasHeight);
 
+    System.out.println("SCT6 " + av.getRanges().getEndSeq());
+
     assertEquals(av.getRanges().getEndSeq(), 3); // unchanged
     int repeatingHeight = (int) PA.getValue(testee,
             "wrappedRepeatHeightPx");
index 53b4259..c148039 100644 (file)
@@ -725,6 +725,8 @@ public class SeqPanelTest
     assertTrue(charWidth > 0); // sanity check
     assertEquals(alignFrame.getViewport().getRanges().getStartRes(), 0);
 
+    System.out.println("SPT endres "
+            + alignFrame.getViewport().getRanges().getEndRes());
     /*
      * mouse at top left of unwrapped panel
      */
@@ -765,7 +767,21 @@ public class SeqPanelTest
     SeqCanvas seqCanvas = alignFrame.alignPanel.getSeqPanel().seqCanvas;
     int w = seqCanvas.getWidth();
     // limited to number of whole columns, base 0
-    int expected = w / charWidth - 1;
+    // BH there are only 61 residues, but this calculation gives 65
+    // from SeqPanel return for findColumn:
+
+    // /*
+    // * make sure we calculate relative to visible alignment,
+    // * rather than right-hand gutter
+    // */
+    // x = Math.min(x, seqCanvas.getX() + seqCanvas.getWidth());
+    // res = (x / charWidth) + startRes;
+    // res = Math.min(res, av.getRanges().getEndRes());
+
+    int expected = w / charWidth;
+    expected = Math.min(
+            alignFrame.getViewport().getRanges().getEndRes(),
+            expected);
     int col = testee.findColumn(evt);
     assertEquals(col, expected);
 
index 4d25cb5..fb0cf07 100644 (file)
@@ -13,7 +13,7 @@ public class JvCacheableInputBoxTest
 
   private static final String TEST_CACHE_KEY = "CACHE.UNIT_TEST";
 
-  private JvCacheableInputBox<String> cacheBox = new JvCacheableInputBox<String>(
+  private JvCacheableInputBox<String> cacheBox = new JvCacheableInputBox<>(
           TEST_CACHE_KEY);
 
   @BeforeClass(alwaysRun = true)
@@ -53,8 +53,11 @@ public class JvCacheableInputBoxTest
     cacheBox.addItem(testInput);
     cacheBox.setSelectedItem(testInput);
     cacheBox.updateCache();
+    synchronized (this)
+    {
     try
     {
+        wait(100);
       // This delay is to let
       // cacheBox.updateCache() finish updating the cache
       Thread.sleep(200);
@@ -62,6 +65,7 @@ public class JvCacheableInputBoxTest
     {
       e.printStackTrace();
     }
+    }
     LinkedHashSet<String> foundCache = appCache
             .getAllCachedItemsFor(TEST_CACHE_KEY);
     Assert.assertTrue(foundCache.contains(testInput));