JAL-2591 Refactor HiddenColumns to use ArrayList instead of Vector
[jalview.git] / test / jalview / datamodel / ColumnSelectionTest.java
index 6debd87..e99e952 100644 (file)
@@ -59,6 +59,30 @@ public class ColumnSelectionTest
     assertEquals("[2, 5, 3]", sel.toString());
   }
 
+  @Test(groups = { "Functional" })
+  public void testSetElementsFrom()
+  {
+    ColumnSelection fromcs = new ColumnSelection();
+    ColumnSelection tocs = new ColumnSelection();
+    HiddenColumns hidden = new HiddenColumns();
+
+    fromcs.addElement(2);
+    fromcs.addElement(3);
+    fromcs.addElement(5);
+
+    tocs.setElementsFrom(fromcs, hidden);
+    assertTrue(tocs.equals(fromcs));
+
+    hidden.hideColumns(4, 6);
+    tocs.setElementsFrom(fromcs, hidden);
+
+    // expect cols 2 and 3 to be selected but not 5
+    ColumnSelection expectcs = new ColumnSelection();
+    expectcs.addElement(2);
+    expectcs.addElement(3);
+    assertTrue(tocs.equals(expectcs));
+  }
+
   /**
    * Test the remove method - in particular to verify that remove(int i) removes
    * the element whose value is i, _NOT_ the i'th element.
@@ -106,9 +130,9 @@ public class ColumnSelectionTest
     cs.addElement(5);
     cs.addElement(6);
     // hide column 5 (and adjacent):
-    cs.hideSelectedColumns(5, al);
+    cs.hideSelectedColumns(5, al.getHiddenColumns());
     // 4,5,6 now hidden:
-    List<int[]> hidden = al.getHiddenColumns().getListOfCols();
+    List<int[]> hidden = al.getHiddenColumns().getHiddenColumnsCopy();
     assertEquals(1, hidden.size());
     assertEquals("[4, 6]", Arrays.toString(hidden.get(0)));
     // none now selected:
@@ -120,8 +144,8 @@ public class ColumnSelectionTest
     cs.addElement(4);
     cs.addElement(5);
     cs.addElement(6);
-    cs.hideSelectedColumns(4, al);
-    hidden = al.getHiddenColumns().getListOfCols();
+    cs.hideSelectedColumns(4, al.getHiddenColumns());
+    hidden = al.getHiddenColumns().getHiddenColumnsCopy();
     assertEquals(1, hidden.size());
     assertEquals("[4, 6]", Arrays.toString(hidden.get(0)));
     assertTrue(cs.getSelected().isEmpty());
@@ -132,8 +156,8 @@ public class ColumnSelectionTest
     cs.addElement(4);
     cs.addElement(5);
     cs.addElement(6);
-    cs.hideSelectedColumns(6, al);
-    hidden = al.getHiddenColumns().getListOfCols();
+    cs.hideSelectedColumns(6, al.getHiddenColumns());
+    hidden = al.getHiddenColumns().getHiddenColumnsCopy();
     assertEquals(1, hidden.size());
     assertEquals("[4, 6]", Arrays.toString(hidden.get(0)));
     assertTrue(cs.getSelected().isEmpty());
@@ -143,8 +167,8 @@ public class ColumnSelectionTest
     cs = new ColumnSelection();
     cs.addElement(4);
     cs.addElement(6);
-    cs.hideSelectedColumns(5, al);
-    hidden = al.getHiddenColumns().getListOfCols();
+    cs.hideSelectedColumns(5, al.getHiddenColumns());
+    hidden = al.getHiddenColumns().getHiddenColumnsCopy();
     assertEquals(1, hidden.size());
     assertEquals("[4, 6]", Arrays.toString(hidden.get(0)));
     assertTrue(cs.getSelected().isEmpty());
@@ -172,7 +196,7 @@ public class ColumnSelectionTest
 
     cs.hideSelectedColumns(al);
     assertTrue(cs.getSelected().isEmpty());
-    List<int[]> hidden = cols.getListOfCols();
+    List<int[]> hidden = cols.getHiddenColumnsCopy();
     assertEquals(4, hidden.size());
     assertEquals("[2, 4]", Arrays.toString(hidden.get(0)));
     assertEquals("[7, 9]", Arrays.toString(hidden.get(1)));