JAL-3438 spotless for 2.11.2.0
[jalview.git] / test / jalview / datamodel / MappingTest.java
index a295017..0bf753d 100644 (file)
@@ -1,6 +1,6 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.9.0b1)
- * Copyright (C) 2015 The Jalview Authors
+ * Jalview - A Sequence Alignment Editor and Viewer ($$Version-Rel$$)
+ * Copyright (C) $$Year-Rel$$ The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
 package jalview.datamodel;
 
 import static org.testng.AssertJUnit.assertEquals;
+import static org.testng.AssertJUnit.assertSame;
 
+import jalview.gui.JvOptionPane;
 import jalview.util.MapList;
 
 import java.util.Arrays;
 
+import org.testng.annotations.BeforeClass;
 import org.testng.annotations.Test;
 
 /**
@@ -33,6 +36,14 @@ import org.testng.annotations.Test;
  */
 public class MappingTest
 {
+
+  @BeforeClass(alwaysRun = true)
+  public void setUpJvOptionPane()
+  {
+    JvOptionPane.setInteractiveMode(false);
+    JvOptionPane.setMockResponse(JvOptionPane.CANCEL_OPTION);
+  }
+
   /**
    * trite test of the intersectVisContigs method for a simple DNA -> Protein
    * exon map and a range of visContigs
@@ -40,11 +51,13 @@ public class MappingTest
   @Test(groups = { "Functional" })
   public void testIntersectVisContigs()
   {
-    MapList fk = new MapList(new int[] { 1, 6, 8, 13, 15, 23 }, new int[] {
-        1, 7 }, 3, 1);
+    MapList fk = new MapList(new int[] { 1, 6, 8, 13, 15, 23 },
+            new int[]
+            { 1, 7 }, 3, 1);
     Mapping m = new Mapping(fk);
-    Mapping m_1 = m.intersectVisContigs(new int[] { fk.getFromLowest(),
-        fk.getFromHighest() });
+    Mapping m_1 = m
+            .intersectVisContigs(new int[]
+            { fk.getFromLowest(), fk.getFromHighest() });
     Mapping m_2 = m.intersectVisContigs(new int[] { 1, 7, 11, 20 });
 
     // assertions from output values 'as is', not checked for correctness
@@ -57,4 +70,36 @@ public class MappingTest
     assertEquals("[[1, 6], [11, 13], [15, 20]]", result);
   }
 
+  @Test(groups = { "Functional" })
+  public void testToString()
+  {
+    /*
+     * with no sequence
+     */
+    MapList fk = new MapList(new int[] { 1, 6, 8, 13 }, new int[] { 4, 7 },
+            3, 1);
+    Mapping m = new Mapping(fk);
+    assertEquals("[ [1, 6] [8, 13] ] 3:1 to [ [4, 7] ] ", m.toString());
+
+    /*
+     * with a sequence
+     */
+    SequenceI seq = new Sequence("Seq1", "");
+    m = new Mapping(seq, fk);
+    assertEquals("[ [1, 6] [8, 13] ] 3:1 to [ [4, 7] ] Seq1", m.toString());
+  }
+
+  @Test(groups = { "Functional" })
+  public void testCopyConstructor()
+  {
+    MapList ml = new MapList(new int[] { 1, 6, 8, 13 }, new int[] { 4, 7 },
+            3, 1);
+    SequenceI seq = new Sequence("seq1", "agtacg");
+    Mapping m = new Mapping(seq, ml);
+    m.setMappedFromId("abc");
+    Mapping copy = new Mapping(m);
+    assertEquals("abc", copy.getMappedFromId());
+    assertEquals(ml, copy.getMap());
+    assertSame(seq, copy.getTo());
+  }
 }