From: BobHanson Date: Mon, 23 Mar 2020 02:33:18 +0000 (-0500) Subject: JAL-3563 Bamboo testing X-Git-Url: http://source.jalview.org/gitweb/?a=commitdiff_plain;h=e9a93e9bcdf6268703e502875c7f6c260ab39bf4;p=jalview.git JAL-3563 Bamboo testing --- diff --git a/test/jalview/gui/AlignFrameTest.java b/test/jalview/gui/AlignFrameTest.java index 8b975bd..568d285 100644 --- a/test/jalview/gui/AlignFrameTest.java +++ b/test/jalview/gui/AlignFrameTest.java @@ -66,6 +66,8 @@ public class AlignFrameTest { JvOptionPane.setInteractiveMode(false); JvOptionPane.setMockResponse(JvOptionPane.CANCEL_OPTION); + + // BH 2020.03.22 solved the assertEquals(c, i_faded) problem below Jalview.setSynchronous(true); } diff --git a/test/jalview/gui/SeqCanvasTest.java b/test/jalview/gui/SeqCanvasTest.java index d5776be..d192998 100644 --- a/test/jalview/gui/SeqCanvasTest.java +++ b/test/jalview/gui/SeqCanvasTest.java @@ -27,7 +27,6 @@ import jalview.bin.Jalview; import jalview.datamodel.AlignmentI; import jalview.io.DataSourceType; import jalview.io.FileLoader; -import jalview.util.Platform; import java.awt.Font; import java.awt.FontMetrics; @@ -84,7 +83,8 @@ public class SeqCanvasTest av.setScaleRightWrapped(true); FontMetrics fm = testee.getFontMetrics(av.getFont()); int labelWidth = fm.stringWidth("000") + charWidth; - // BH 2020.03.22 It is not really necessary to be this detailed. Different OS-based UIs will + // BH 2020.03.22 It is not really necessary to be this detailed. Different + // OS-based UIs will // always have slightly different parameters. StringgWidths are not // necessarily linear sums of the letters involved. // for example, the calculation for JavaScript is a float that has to be @@ -222,7 +222,10 @@ public class SeqCanvasTest canvasWidth += 2; wrappedWidth = testee.calculateWrappedGeometry(canvasWidth, canvasHeight); - assertEquals(wrappedWidth, Platform.isMac() ? 24 : 25); // 2px not enough + Assert.assertTrue(wrappedWidth == 24 || wrappedWidth == 25, + "WrappedWidth [" + wrappedWidth + "] should be 24 or 25"); // 2px + // not + // enough canvasWidth += 1; wrappedWidth = testee.calculateWrappedGeometry(canvasWidth, canvasHeight); @@ -276,8 +279,27 @@ public class SeqCanvasTest FontMetrics fm = testee.getFontMetrics(av.getFont()); int labelWidth = fm.stringWidth("000") + charWidth; - assertEquals(labelWidth, - Platform.isMac() ? 3 * 9 + charWidth : 3 * 8 + charWidth); + // BH 2020.03.22 It is not really necessary to be this detailed. Different + // OS-based UIs will + // always have slightly different parameters. StringgWidths are not + // necessarily linear sums of the letters involved. + // for example, the calculation for JavaScript is a float that has to be + // rounded. + // ..............................mac................PC................linux? + Assert.assertTrue( + labelWidth == 39 || labelWidth == 35 || labelWidth == 36);// 3 * 9 + + // charWidth + // || + // labelWidth + // == 3 * + // 8 + + // charWidth, + // "labelWidth + // 36 or + // 39"); + // int labelWidth = fm.stringWidth("000") + charWidth; + // assertEquals(labelWidth, + // Platform.isMac() ? 3 * 9 + charWidth : 3 * 8 + charWidth); int annotationHeight = testee.getAnnotationHeight(); @@ -356,10 +378,10 @@ public class SeqCanvasTest AlignmentI al = av.getAlignment(); assertEquals(al.getWidth(), 157); assertEquals(al.getHeight(), 15); + String ss = ""; av.getRanges().setStartEndSeq(0, 3); av.setShowAnnotation(false); av.setScaleAboveWrapped(true); - SeqCanvas testee = af.alignPanel.getSeqPanel().seqCanvas; av.setWrapAlignment(true); av.setFont(new Font("SansSerif", Font.PLAIN, 14), true); @@ -372,10 +394,10 @@ public class SeqCanvasTest int canvasWidth = 400; int canvasHeight = 300; testee.calculateWrappedGeometry(canvasWidth, canvasHeight); - - assertEquals(av.getRanges().getEndSeq(), 3); // unchanged int repeatingHeight = (int) PA.getValue(testee, "wrappedRepeatHeightPx"); + assertEquals(av.getRanges().getEndSeq(), 3, + "endSeq should be 3"); // unchanged assertEquals(repeatingHeight, charHeight * (2 + al.getHeight())); } }