JAL-2114 added single-locus case and more error tests
[jalview.git] / test / jalview / util / DnaUtilsTest.java
index af76885..9e978fe 100644 (file)
@@ -19,9 +19,17 @@ public class DnaUtilsTest
   public void testParseLocation()
   {
     /*
+     * single locus
+     */
+    List<int[]> ranges = DnaUtils.parseLocation("467");
+    assertEquals(1, ranges.size());
+    assertEquals(467, ranges.get(0)[0]);
+    assertEquals(467, ranges.get(0)[1]);
+
+    /*
      * simple range
      */
-    List<int[]> ranges = DnaUtils.parseLocation("12..78");
+    ranges = DnaUtils.parseLocation("12..78");
     assertEquals(1, ranges.size());
     assertEquals(12, ranges.get(0)[0]);
     assertEquals(78, ranges.get(0)[1]);
@@ -87,6 +95,7 @@ public class DnaUtilsTest
     assertNull(DnaUtils.parseLocation("34..>126"));
     assertNull(DnaUtils.parseLocation("34.126"));
     assertNull(DnaUtils.parseLocation("34^126"));
+    assertNull(DnaUtils.parseLocation("order(34..126,130..180)"));
 
     /*
      * invalid things
@@ -94,6 +103,9 @@ public class DnaUtilsTest
     assertNull(DnaUtils.parseLocation(""));
     assertNull(DnaUtils.parseLocation("JOIN(1..2)"));
     assertNull(DnaUtils.parseLocation("join(1..2"));
+    assertNull(DnaUtils.parseLocation("join(1..2("));
+    assertNull(DnaUtils.parseLocation("complement(1..2"));
+    assertNull(DnaUtils.parseLocation("complement(1..2("));
     try
     {
       assertNull(DnaUtils.parseLocation(null));