JAL-1894 update year/version in copyright
[jalview.git] / test / jalview / datamodel / SequenceTest.java
index 37d39b6..e3d3fc0 100644 (file)
@@ -1,24 +1,47 @@
+/*
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.9.0b1)
+ * Copyright (C) 2015 The Jalview Authors
+ * 
+ * This file is part of Jalview.
+ * 
+ * Jalview is free software: you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License 
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
+ *  
+ * Jalview is distributed in the hope that it will be useful, but 
+ * WITHOUT ANY WARRANTY; without even the implied warranty 
+ * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
+ * PURPOSE.  See the GNU General Public License for more details.
+ * 
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * The Jalview Authors are detailed in the 'AUTHORS' file.
+ */
 package jalview.datamodel;
 
-import static org.testng.AssertJUnit.assertSame;
 import static org.testng.AssertJUnit.assertEquals;
-import static org.testng.AssertJUnit.assertTrue;
 import static org.testng.AssertJUnit.assertNull;
-import org.testng.annotations.Test;
-import org.testng.annotations.BeforeMethod;
+import static org.testng.AssertJUnit.assertSame;
+import static org.testng.AssertJUnit.assertTrue;
+
 import java.util.Arrays;
 import java.util.List;
 
+import org.testng.annotations.BeforeMethod;
+import org.testng.annotations.Test;
+
 public class SequenceTest
 {
   SequenceI seq;
 
-  @BeforeMethod
+  @BeforeMethod(alwaysRun = true)
   public void setUp()
   {
     seq = new Sequence("FER1", "AKPNGVL");
   }
-  @Test
+
+  @Test(groups = { "Functional" })
   public void testInsertGapsAndGapmaps()
   {
     SequenceI aseq = seq.deriveSequence();
@@ -33,7 +56,7 @@ public class SequenceTest
     assertEquals("Gap interval 2 end wrong", 8, gapInt.get(1)[1]);
   }
 
-  @Test
+  @Test(groups = { "Functional" })
   public void testGetAnnotation()
   {
     // initial state returns null not an empty array
@@ -49,12 +72,15 @@ public class SequenceTest
     assertNull(seq.getAnnotation());
   }
 
-  @Test
+  @Test(groups = { "Functional" })
   public void testGetAnnotation_forLabel()
   {
-    AlignmentAnnotation ann1 = addAnnotation("label1", "desc1", "calcId1", 1f);
-    AlignmentAnnotation ann2 = addAnnotation("label2", "desc2", "calcId2", 1f);
-    AlignmentAnnotation ann3 = addAnnotation("label1", "desc3", "calcId3", 1f);
+    AlignmentAnnotation ann1 = addAnnotation("label1", "desc1", "calcId1",
+            1f);
+    AlignmentAnnotation ann2 = addAnnotation("label2", "desc2", "calcId2",
+            1f);
+    AlignmentAnnotation ann3 = addAnnotation("label1", "desc3", "calcId3",
+            1f);
     AlignmentAnnotation[] anns = seq.getAnnotation("label1");
     assertEquals(2, anns.length);
     assertSame(ann1, anns[0]);
@@ -62,17 +88,16 @@ public class SequenceTest
   }
 
   private AlignmentAnnotation addAnnotation(String label,
-          String description, String calcId,
-          float value)
+          String description, String calcId, float value)
   {
-    final AlignmentAnnotation annotation = new AlignmentAnnotation(label, description,
-            value);
+    final AlignmentAnnotation annotation = new AlignmentAnnotation(label,
+            description, value);
     annotation.setCalcId(calcId);
     seq.addAlignmentAnnotation(annotation);
     return annotation;
   }
 
-  @Test
+  @Test(groups = { "Functional" })
   public void testGetAlignmentAnnotations_forCalcIdAndLabel()
   {
     AlignmentAnnotation ann1 = addAnnotation("label1", "desc1", "calcId1",
@@ -83,16 +108,14 @@ public class SequenceTest
             1f);
     AlignmentAnnotation ann4 = addAnnotation("label2", "desc3", "calcId2",
             1f);
-    AlignmentAnnotation ann5 = addAnnotation("label5", "desc3", null,
-            1f);
-    AlignmentAnnotation ann6 = addAnnotation(null, "desc3", "calcId3",
-            1f);
+    AlignmentAnnotation ann5 = addAnnotation("label5", "desc3", null, 1f);
+    AlignmentAnnotation ann6 = addAnnotation(null, "desc3", "calcId3", 1f);
     List<AlignmentAnnotation> anns = seq.getAlignmentAnnotations("calcId2",
             "label2");
     assertEquals(2, anns.size());
     assertSame(ann2, anns.get(0));
     assertSame(ann4, anns.get(1));
-    
+
     assertTrue(seq.getAlignmentAnnotations("calcId2", "label3").isEmpty());
     assertTrue(seq.getAlignmentAnnotations("calcId3", "label5").isEmpty());
     assertTrue(seq.getAlignmentAnnotations("calcId2", null).isEmpty());
@@ -105,7 +128,7 @@ public class SequenceTest
    * setting the sequenceRef on the annotation. Adding the same annotation twice
    * should be ignored.
    */
-  @Test
+  @Test(groups = { "Functional" })
   public void testAddAlignmentAnnotation()
   {
     assertNull(seq.getAnnotation());
@@ -135,7 +158,7 @@ public class SequenceTest
 
   }
 
-  @Test
+  @Test(groups = { "Functional" })
   public void testGetStartGetEnd()
   {
     SequenceI seq = new Sequence("test", "ABCDEF");
@@ -155,7 +178,7 @@ public class SequenceTest
    * Tests for the method that returns an alignment column position (base 1) for
    * a given sequence position (base 1).
    */
-  @Test
+  @Test(groups = { "Functional" })
   public void testFindIndex()
   {
     SequenceI seq = new Sequence("test", "ABCDEF");
@@ -183,7 +206,7 @@ public class SequenceTest
    * Tests for the method that returns a dataset sequence position (base 1) for
    * an aligned column position (base 0).
    */
-  @Test
+  @Test(groups = { "Functional" })
   public void testFindPosition()
   {
     SequenceI seq = new Sequence("test", "ABCDEF");
@@ -218,7 +241,7 @@ public class SequenceTest
     assertEquals(7, seq.findPosition(11));
   }
 
-  @Test
+  @Test(groups = { "Functional" })
   public void testDeleteChars()
   {
     SequenceI seq = new Sequence("test", "ABCDEF");
@@ -236,7 +259,7 @@ public class SequenceTest
     assertEquals(6, seq.getEnd());
   }
 
-  @Test
+  @Test(groups = { "Functional" })
   public void testInsertCharAt()
   {
     // non-static methods:
@@ -253,7 +276,7 @@ public class SequenceTest
    * Test the method that returns an array of aligned sequence positions where
    * the array index is the data sequence position (both base 0).
    */
-  @Test
+  @Test(groups = { "Functional" })
   public void testGapMap()
   {
     SequenceI seq = new Sequence("test", "-A--B-CD-E--F-");
@@ -265,7 +288,7 @@ public class SequenceTest
    * Test the method that gets sequence features, either from the sequence or
    * its dataset.
    */
-  @Test
+  @Test(groups = { "Functional" })
   public void testGetSequenceFeatures()
   {
     SequenceI seq = new Sequence("test", "GATCAT");
@@ -314,7 +337,7 @@ public class SequenceTest
    * entries are the residue positions at the sequence position (or to the right
    * if a gap)
    */
-  @Test
+  @Test(groups = { "Functional" })
   public void testFindPositionMap()
   {
     /*
@@ -325,14 +348,14 @@ public class SequenceTest
      */
     Sequence seq = new Sequence("TestSeq", "AB.C-D E.");
     int[] map = seq.findPositionMap();
-    assertEquals(Arrays.toString(new int[]
-    { 1, 2, 3, 3, 4, 4, 5, 5, 6 }), Arrays.toString(map));
+    assertEquals(Arrays.toString(new int[] { 1, 2, 3, 3, 4, 4, 5, 5, 6 }),
+            Arrays.toString(map));
   }
 
   /**
    * Test for getSubsequence
    */
-  @Test
+  @Test(groups = { "Functional" })
   public void testGetSubsequence()
   {
     SequenceI seq = new Sequence("TestSeq", "ABCDEFG");
@@ -352,7 +375,7 @@ public class SequenceTest
   /**
    * Test for deriveSequence applied to a sequence with a dataset
    */
-  @Test
+  @Test(groups = { "Functional" })
   public void testDeriveSequence_existingDataset()
   {
     SequenceI seq = new Sequence("Seq1", "CD");
@@ -367,7 +390,7 @@ public class SequenceTest
   /**
    * Test for deriveSequence applied to an ungapped sequence with no dataset
    */
-  @Test
+  @Test(groups = { "Functional" })
   public void testDeriveSequence_noDatasetUngapped()
   {
     SequenceI seq = new Sequence("Seq1", "ABCDEF");
@@ -382,7 +405,7 @@ public class SequenceTest
   /**
    * Test for deriveSequence applied to a gapped sequence with no dataset
    */
-  @Test
+  @Test(groups = { "Functional" })
   public void testDeriveSequence_noDatasetGapped()
   {
     SequenceI seq = new Sequence("Seq1", "AB-C.D EF");