X-Git-Url: http://source.jalview.org/gitweb/?a=blobdiff_plain;f=test%2Fjalview%2Futil%2FDnaUtilsTest.java;h=6623c137c23e854540e4d801764e9a0fd976ba8c;hb=9472f2f66bbcbc7d875251804d4c926f63828a87;hp=9e978fe6224cef2673a85da3290033ab8609a8fa;hpb=67538ac6c16cf7a413023a1faf0593a20b1634e3;p=jalview.git diff --git a/test/jalview/util/DnaUtilsTest.java b/test/jalview/util/DnaUtilsTest.java index 9e978fe..6623c13 100644 --- a/test/jalview/util/DnaUtilsTest.java +++ b/test/jalview/util/DnaUtilsTest.java @@ -89,10 +89,20 @@ public class DnaUtilsTest assertEquals(87064, ranges.get(1)[1]); /* + * beyond 5' or 3' locus + */ + ranges = DnaUtils.parseLocation("<34..126"); + assertEquals(1, ranges.size()); + assertEquals(34, ranges.get(0)[0]); + assertEquals(126, ranges.get(0)[1]); + ranges = DnaUtils.parseLocation("35..>127"); + assertEquals(1, ranges.size()); + assertEquals(35, ranges.get(0)[0]); + assertEquals(127, ranges.get(0)[1]); + + /* * valid things we don't yet handle */ - assertNull(DnaUtils.parseLocation("<34..126")); - assertNull(DnaUtils.parseLocation("34..>126")); assertNull(DnaUtils.parseLocation("34.126")); assertNull(DnaUtils.parseLocation("34^126")); assertNull(DnaUtils.parseLocation("order(34..126,130..180)")); @@ -114,6 +124,19 @@ public class DnaUtilsTest { // expected } + + /* + * nested joins are not allowed; just as well since this fails to parse + * (splitting tokens by comma fragments the inner join expression) + */ + assertNull(DnaUtils + .parseLocation("join(1..2,join(4..5,10..12),18..22)")); + /* + * complement may not enclose multiple ranges + * parsing fails for the same reason + */ + assertNull(DnaUtils + .parseLocation("join(complement(36618..36700,4000..4200),86988..87064)")); } }