JAL-1551 spotlessApply
[jalview.git] / test / jalview / project / Jalview2xmlTests.java
index 6281c29..d74cd31 100644 (file)
@@ -55,6 +55,7 @@ import jalview.datamodel.AlignmentAnnotation;
 import jalview.datamodel.AlignmentI;
 import jalview.datamodel.Annotation;
 import jalview.datamodel.ContactListI;
+import jalview.datamodel.ContactMatrix;
 import jalview.datamodel.ContactMatrixI;
 import jalview.datamodel.DBRefEntry;
 import jalview.datamodel.GeneLocus;
@@ -109,6 +110,8 @@ public class Jalview2xmlTests extends Jalview2xmlBase
   @BeforeClass(alwaysRun = true)
   public void setUpJvOptionPane()
   {
+    if (Desktop.instance != null)
+      Desktop.instance.closeAll_actionPerformed(null);
     JvOptionPane.setInteractiveMode(false);
     JvOptionPane.setMockResponse(JvOptionPane.CANCEL_OPTION);
   }
@@ -242,9 +245,8 @@ public class Jalview2xmlTests extends Jalview2xmlBase
 
     boolean diffseqcols = false, diffgseqcols = false;
     SequenceI[] sqs = af.getViewport().getAlignment().getSequencesArray();
-    for (int p = 0,
-            pSize = af.getViewport().getAlignment().getWidth(); p < pSize
-                    && (!diffseqcols || !diffgseqcols); p++)
+    for (int p = 0, pSize = af.getViewport().getAlignment()
+            .getWidth(); p < pSize && (!diffseqcols || !diffgseqcols); p++)
     {
       if (_rcs.findColour(sqs[0].getCharAt(p), p, sqs[0], null, 0f) != _rcs
               .findColour(sqs[5].getCharAt(p), p, sqs[5], null, 0f))
@@ -263,9 +265,8 @@ public class Jalview2xmlTests extends Jalview2xmlBase
     assertTrue(__rcs.isSeqAssociated(),
             "Group Annotation colourscheme wasn't sequence associated");
 
-    for (int p = 0,
-            pSize = af.getViewport().getAlignment().getWidth(); p < pSize
-                    && (!diffseqcols || !diffgseqcols); p++)
+    for (int p = 0, pSize = af.getViewport().getAlignment()
+            .getWidth(); p < pSize && (!diffseqcols || !diffgseqcols); p++)
     {
       if (_rgcs.findColour(sqs[1].getCharAt(p), p, sqs[1], null,
               0f) != _rgcs.findColour(sqs[2].getCharAt(p), p, sqs[2], null,
@@ -1547,7 +1548,9 @@ public class Jalview2xmlTests extends Jalview2xmlBase
     AlignFrame af = new FileLoader().LoadFileWaitTillLoaded(
             ">seq1\nMATRSQFLVNF\n", DataSourceType.PASTE);
     AlignmentI al = af.getViewport().getAlignment();
-    SequenceI sq = al.getSequenceAt(0);
+    // PAE matrices are added as reference annotation to the dataset sequence
+    // at least for now.
+    SequenceI sq = al.getSequenceAt(0).getDatasetSequence();
     int i = sq.getLength();
     float[][] paevals = new float[i][i];
     for (i = i - 1; i >= 0; i--)
@@ -1560,6 +1563,14 @@ public class Jalview2xmlTests extends Jalview2xmlBase
       }
     }
     PAEContactMatrix dummyMat = new PAEContactMatrix(sq, paevals);
+    String content = ContactMatrix.contactToFloatString(dummyMat);
+    Assert.assertTrue(content.contains("\t1.")); // at least one element must be
+                                                 // 1
+    float[][] vals = ContactMatrix.fromFloatStringToContacts(content,
+            sq.getLength(), sq.getLength());
+    assertEquals(vals[3][4], paevals[3][4]);
+    dummyMat.makeGroups(0.5f, false);
+    Assert.assertNotSame(dummyMat.getNewick(), "");
     AlignmentAnnotation paeCm = sq.addContactList(dummyMat);
     al.addAnnotation(paeCm);
     File tfile = File.createTempFile("testStoreAndRecoverPAEmatrix",
@@ -1570,15 +1581,15 @@ public class Jalview2xmlTests extends Jalview2xmlBase
     af = new FileLoader().LoadFileWaitTillLoaded(tfile.getAbsolutePath(),
             DataSourceType.FILE);
     AlignmentI newAl = af.getViewport().getAlignment();
-    SequenceI newSeq = newAl.getSequenceAt(0);
+    SequenceI newSeq = newAl.getSequenceAt(0).getDatasetSequence();
     // check annotation of the expected type exists
     Assert.assertEquals(newSeq.getAnnotation().length, 1);
     Assert.assertEquals(newSeq.getAnnotation()[0].graph, paeCm.graph);
 
     // check a contact matrix was recovered
     Assert.assertEquals(newSeq.getContactMaps().size(), 1);
-    // and can be found for the annotation
-    ContactMatrixI restoredMat = al
+    // and can be found for the annotation on the sequence
+    ContactMatrixI restoredMat = newSeq
             .getContactMatrixFor(newSeq.getAnnotation()[0]);
     Assert.assertNotNull(restoredMat);
     for (i = sq.getLength() - 1; i >= 0; i--)
@@ -1590,6 +1601,11 @@ public class Jalview2xmlTests extends Jalview2xmlBase
         Assert.assertEquals(oldCM.getContactAt(j), newCM.getContactAt(j));
       }
     }
+    Assert.assertEquals(restoredMat.hasGroups(), dummyMat.hasGroups());
+    Assert.assertEquals(restoredMat.getGroups(), dummyMat.getGroups());
+    Assert.assertEquals(restoredMat.hasTree(), dummyMat.hasTree());
+    Assert.assertEquals(restoredMat.getNewick(), dummyMat.getNewick());
+
   }
 
 }