import jalview.datamodel.AlignmentI;
import jalview.io.DataSourceType;
import jalview.io.FileLoader;
+import jalview.util.Platform;
import java.awt.Font;
import java.awt.FontMetrics;
* 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(
av.setFont(new Font("SansSerif", Font.PLAIN, 14), true);
int charHeight = av.getCharHeight();
int charWidth = av.getCharWidth();
- assertEquals(charHeight, 17);
- assertEquals(charWidth, 12);
+ assertEquals(charHeight, Platform.isMac() ? 17 : 19);
+ assertEquals(charWidth, Platform.isMac() ? 12 : 11);
/*
* first with scales above, left, right
av.setScaleRightWrapped(true);
FontMetrics fm = testee.getFontMetrics(av.getFont());
int labelWidth = fm.stringWidth("000") + charWidth;
- assertEquals(labelWidth, 39); // 3 x 9 + charWidth
+ assertEquals(labelWidth,
+ Platform.isMac() ? 3 * 9 + charWidth : 3 * 8 + charWidth);
/*
* width 400 pixels leaves (400 - 2*labelWidth) for residue columns
canvasWidth += 2;
wrappedWidth = testee.calculateWrappedGeometry(canvasWidth,
canvasHeight);
- assertEquals(wrappedWidth, 24); // 2px not enough
+ assertEquals(wrappedWidth, Platform.isMac() ? 24 : 25); // 2px not enough
canvasWidth += 1;
wrappedWidth = testee.calculateWrappedGeometry(canvasWidth,
canvasHeight);
* 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(
av.setFont(new Font("SansSerif", Font.PLAIN, 14), true);
int charHeight = av.getCharHeight();
int charWidth = av.getCharWidth();
- assertEquals(charHeight, 17);
- assertEquals(charWidth, 12);
-
+
+ assertEquals(charHeight, Platform.isMac() ? 17 : 19);
+ assertEquals(charWidth, Platform.isMac() ? 12 : 11);
+
SeqCanvas testee = af.alignPanel.getSeqPanel().seqCanvas;
/*
av.setScaleAboveWrapped(true);
av.setScaleLeftWrapped(true);
av.setScaleRightWrapped(true);
+
FontMetrics fm = testee.getFontMetrics(av.getFont());
int labelWidth = fm.stringWidth("000") + charWidth;
- assertEquals(labelWidth, 39); // 3 x 9 + charWidth
+ assertEquals(labelWidth,
+ Platform.isMac() ? 3 * 9 + charWidth : 3 * 8 + charWidth);
+
int annotationHeight = testee.getAnnotationHeight();
/*
* 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(
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();
- assertEquals(charHeight, 17);
- assertEquals(charWidth, 12);
+ // Windows h=19, w=11.
+ assertEquals(charHeight, Platform.isMac() ? 17 : 19);
+ assertEquals(charWidth, Platform.isMac() ? 12 : 11);
int canvasWidth = 400;
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");