1 package jalview.datamodel.features;
3 import static org.testng.Assert.assertEquals;
5 import org.testng.annotations.Test;
7 public class RangeComparatorTest
9 class Range implements ContiguousI
34 @Test(groups = "Functional")
35 public void testCompare()
37 RangeComparator comp = new RangeComparator(true);
39 // same position, same length
40 assertEquals(comp.compare(10, 10, 20, 20), 0);
41 // same position, len1 > len2
42 assertEquals(comp.compare(10, 10, 20, 19), -1);
43 // same position, len1 < len2
44 assertEquals(comp.compare(10, 10, 20, 21), 1);
46 assertEquals(comp.compare(11, 10, 20, 20), 1);
48 assertEquals(comp.compare(10, 11, 20, 10), -1);
51 @Test(groups = "Functional")
52 public void testCompare_byStart()
54 RangeComparator comp = new RangeComparator(true);
56 // same start position, same length
57 assertEquals(comp.compare(new Range(10, 20), new Range(10, 20)), 0);
58 // same start position, len1 > len2
59 assertEquals(comp.compare(new Range(10, 20), new Range(10, 19)), -1);
60 // same start position, len1 < len2
61 assertEquals(comp.compare(new Range(10, 18), new Range(10, 20)), 1);
63 assertEquals(comp.compare(new Range(11, 20), new Range(10, 20)), 1);
65 assertEquals(comp.compare(new Range(10, 20), new Range(11, 20)), -1);
68 @Test(groups = "Functional")
69 public void testCompare_byEnd()
71 RangeComparator comp = new RangeComparator(false);
73 // same end position, same length
74 assertEquals(comp.compare(new Range(10, 20), new Range(10, 20)), 0);
75 // same end position, len1 > len2
76 assertEquals(comp.compare(new Range(10, 20), new Range(11, 20)), -1);
77 // same end position, len1 < len2
78 assertEquals(comp.compare(new Range(11, 20), new Range(10, 20)), 1);
80 assertEquals(comp.compare(new Range(10, 21), new Range(10, 20)), 1);
82 assertEquals(comp.compare(new Range(10, 20), new Range(10, 21)), -1);