JAL-2674 Unit test for new copy constructor.
[jalview.git] / test / jalview / datamodel / HiddenColumnsTest.java
index 295ad9f..8aee615 100644 (file)
@@ -261,6 +261,33 @@ public class HiddenColumnsTest
             Arrays.toString(cs2.getHiddenColumnsCopy().get(1)));
   }
 
+  @Test(groups = "Functional")
+  public void testCopyConstructor2()
+  {
+    HiddenColumns cs = new HiddenColumns();
+    cs.hideColumns(10, 11);
+    cs.hideColumns(5, 7);
+
+    HiddenColumns cs2 = new HiddenColumns(cs, 3, 9, 1);
+    assertTrue(cs2.hasHiddenColumns());
+
+    // only [5,7] returned, offset by 1
+    assertEquals("[4, 6]",
+            Arrays.toString(cs2.getHiddenColumnsCopy().get(0)));
+    assertEquals(3, cs2.getSize());
+
+    cs2 = new HiddenColumns(cs, 8, 15, 4);
+    assertTrue(cs2.hasHiddenColumns());
+
+    // only [10,11] returned, offset by 4
+    assertEquals("[6, 7]",
+            Arrays.toString(cs2.getHiddenColumnsCopy().get(0)));
+    assertEquals(2, cs2.getSize());
+
+    cs2 = new HiddenColumns(cs, 6, 10, 4);
+    assertFalse(cs2.hasHiddenColumns());
+  }
+
   /**
    * Test the code used to locate the reference sequence ruler origin
    */