X-Git-Url: http://source.jalview.org/gitweb/?a=blobdiff_plain;f=test%2Fjalview%2Futil%2FMappingUtilsTest.java;h=853ebd5eed5d0056ebed320923bd2d03ea9b1be7;hb=1d17220cc3868f513b5e310a5d09b0f419f13d84;hp=095ab1b5facef1b16a47afd05bbd35a3ae354fc8;hpb=a7e367109fb4cc5dbc5dfb0b3838c9b12bf86343;p=jalview.git diff --git a/test/jalview/util/MappingUtilsTest.java b/test/jalview/util/MappingUtilsTest.java index 095ab1b..853ebd5 100644 --- a/test/jalview/util/MappingUtilsTest.java +++ b/test/jalview/util/MappingUtilsTest.java @@ -21,6 +21,7 @@ package jalview.util; import static org.testng.AssertJUnit.assertEquals; +import static org.testng.AssertJUnit.assertFalse; import static org.testng.AssertJUnit.assertSame; import static org.testng.AssertJUnit.assertTrue; import static org.testng.internal.junit.ArrayAsserts.assertArrayEquals; @@ -857,58 +858,57 @@ public class MappingUtilsTest assertEquals("[5, 10]", Arrays.toString(hidden.get(1))); } - /** - * Tests for the method that removes the trailing stop codon from a mapping - * range i.e. the last 3 positions (whether split or not) - */ @Test(groups = { "Functional" }) - public void testUnmapStopCodon() + public void testGetLength() { + assertEquals(0, MappingUtils.getLength(null)); List ranges = new ArrayList(); - - // simple case, forward strand: - ranges.add(new int[] { 1, 3 }); - ranges.add(new int[] { 9, 14 }); - MappingUtils.unmapStopCodon(ranges, 9); - assertEquals(2, ranges.size()); - assertArrayEquals(new int[] { 1, 3 }, ranges.get(0)); - assertArrayEquals(new int[] { 9, 11 }, ranges.get(1)); - - // split stop codon, forward strand: - ranges.clear(); - ranges.add(new int[] { 1, 8 }); - ranges.add(new int[] { 10, 10 }); - MappingUtils.unmapStopCodon(ranges, 9); - assertEquals(1, ranges.size()); - assertArrayEquals(new int[] { 1, 6 }, ranges.get(0)); - - // very split stop codon, forward strand: - ranges.clear(); + assertEquals(0, MappingUtils.getLength(ranges)); ranges.add(new int[] { 1, 1 }); - ranges.add(new int[] { 3, 4 }); + assertEquals(1, MappingUtils.getLength(ranges)); + ranges.add(new int[] { 2, 10 }); + assertEquals(10, MappingUtils.getLength(ranges)); + ranges.add(new int[] { 20, 10 }); + assertEquals(21, MappingUtils.getLength(ranges)); + } + + @Test(groups = { "Functional" }) + public void testContains() + { + assertFalse(MappingUtils.contains(null, 1)); + List ranges = new ArrayList(); + assertFalse(MappingUtils.contains(ranges, 1)); + + ranges.add(new int[] { 1, 4 }); ranges.add(new int[] { 6, 6 }); - ranges.add(new int[] { 8, 8 }); - ranges.add(new int[] { 10, 10 }); - MappingUtils.unmapStopCodon(ranges, 6); - assertEquals(2, ranges.size()); - assertArrayEquals(new int[] { 1, 1 }, ranges.get(0)); - assertArrayEquals(new int[] { 3, 4 }, ranges.get(1)); - - // simple case, reverse strand: - ranges.clear(); - ranges.add(new int[] { 12, 10 }); - ranges.add(new int[] { 6, 1 }); - MappingUtils.unmapStopCodon(ranges, 9); - assertEquals(2, ranges.size()); - assertArrayEquals(new int[] { 12, 10 }, ranges.get(0)); - assertArrayEquals(new int[] { 6, 4 }, ranges.get(1)); - - // split stop codon, reverse strand: - ranges.clear(); - ranges.add(new int[] { 12, 6 }); - ranges.add(new int[] { 4, 3 }); - MappingUtils.unmapStopCodon(ranges, 9); - assertEquals(1, ranges.size()); - assertArrayEquals(new int[] { 12, 7 }, ranges.get(0)); + ranges.add(new int[] { 8, 10 }); + ranges.add(new int[] { 30, 20 }); + ranges.add(new int[] { -16, -44 }); + + assertFalse(MappingUtils.contains(ranges, 0)); + assertTrue(MappingUtils.contains(ranges, 1)); + assertTrue(MappingUtils.contains(ranges, 2)); + assertTrue(MappingUtils.contains(ranges, 3)); + assertTrue(MappingUtils.contains(ranges, 4)); + assertFalse(MappingUtils.contains(ranges, 5)); + + assertTrue(MappingUtils.contains(ranges, 6)); + assertFalse(MappingUtils.contains(ranges, 7)); + + assertTrue(MappingUtils.contains(ranges, 8)); + assertTrue(MappingUtils.contains(ranges, 9)); + assertTrue(MappingUtils.contains(ranges, 10)); + + assertFalse(MappingUtils.contains(ranges, 31)); + assertTrue(MappingUtils.contains(ranges, 30)); + assertTrue(MappingUtils.contains(ranges, 29)); + assertTrue(MappingUtils.contains(ranges, 20)); + assertFalse(MappingUtils.contains(ranges, 19)); + + assertFalse(MappingUtils.contains(ranges, -15)); + assertTrue(MappingUtils.contains(ranges, -16)); + assertTrue(MappingUtils.contains(ranges, -44)); + assertFalse(MappingUtils.contains(ranges, -45)); } + }