JAL-1636 translate stop codon as '*', mouseover * as STOP
[jalview.git] / test / jalview / analysis / AlignmentUtilsTests.java
index 6fef829..9c8e28c 100644 (file)
@@ -579,27 +579,38 @@ public class AlignmentUtilsTests
   {
     assertTrue(AlignmentUtils.translatesAs("tttcccaaaggg".toCharArray(), 0,
             "FPKG".toCharArray()));
-    // with start codon
+    // with start codon (not in protein)
     assertTrue(AlignmentUtils.translatesAs("atgtttcccaaaggg".toCharArray(),
             3, "FPKG".toCharArray()));
-    // with stop codon1
+    // with stop codon1 (not in protein)
     assertTrue(AlignmentUtils.translatesAs("tttcccaaagggtaa".toCharArray(),
             0, "FPKG".toCharArray()));
-    // with stop codon2
+    // with stop codon1 (in protein as *)
+    assertTrue(AlignmentUtils.translatesAs("tttcccaaagggtaa".toCharArray(),
+            0, "FPKG*".toCharArray()));
+    // with stop codon2 (not in protein)
     assertTrue(AlignmentUtils.translatesAs("tttcccaaagggtag".toCharArray(),
             0, "FPKG".toCharArray()));
-    // with stop codon3
+    // with stop codon3 (not in protein)
     assertTrue(AlignmentUtils.translatesAs("tttcccaaagggtga".toCharArray(),
             0, "FPKG".toCharArray()));
     // with start and stop codon1
     assertTrue(AlignmentUtils.translatesAs(
-            "atgtttcccaaaggtaa".toCharArray(), 3, "FPKG".toCharArray()));
+            "atgtttcccaaagggtaa".toCharArray(), 3, "FPKG".toCharArray()));
+    // with start and stop codon1 (in protein as *)
+    assertTrue(AlignmentUtils.translatesAs(
+            "atgtttcccaaagggtaa".toCharArray(), 3, "FPKG*".toCharArray()));
     // with start and stop codon2
     assertTrue(AlignmentUtils.translatesAs(
-            "atgtttcccaaaggtag".toCharArray(), 3, "FPKG".toCharArray()));
+            "atgtttcccaaagggtag".toCharArray(), 3, "FPKG".toCharArray()));
     // with start and stop codon3
     assertTrue(AlignmentUtils.translatesAs(
-            "atgtttcccaaaggtga".toCharArray(), 3, "FPKG".toCharArray()));
+            "atgtttcccaaagggtga".toCharArray(), 3, "FPKG".toCharArray()));
+
+    // with embedded stop codon
+    assertTrue(AlignmentUtils.translatesAs(
+            "atgtttTAGcccaaaTAAgggtga".toCharArray(), 3,
+            "F*PK*G".toCharArray()));
 
     // wrong protein
     assertFalse(AlignmentUtils.translatesAs("tttcccaaaggg".toCharArray(),