1 package jalview.datamodel.features;
3 import static org.testng.Assert.assertEquals;
5 import java.util.Comparator;
7 import org.testng.annotations.Test;
9 public class RangeComparatorTest
12 @Test(groups = "Functional")
13 public void testCompare()
15 RangeComparator comp = new RangeComparator(true);
17 // same position, same length
18 assertEquals(comp.compare(10, 10, 20, 20), 0);
19 // same position, len1 > len2
20 assertEquals(comp.compare(10, 10, 20, 19), -1);
21 // same position, len1 < len2
22 assertEquals(comp.compare(10, 10, 20, 21), 1);
24 assertEquals(comp.compare(11, 10, 20, 20), 1);
26 assertEquals(comp.compare(10, 11, 20, 10), -1);
29 @Test(groups = "Functional")
30 public void testCompare_byStart()
32 Comparator<ContiguousI> comp = RangeComparator.BY_START_POSITION;
34 // same start position, same length
35 assertEquals(comp.compare(new Range(10, 20), new Range(10, 20)), 0);
36 // same start position, len1 > len2
37 assertEquals(comp.compare(new Range(10, 20), new Range(10, 19)), -1);
38 // same start position, len1 < len2
39 assertEquals(comp.compare(new Range(10, 18), new Range(10, 20)), 1);
41 assertEquals(comp.compare(new Range(11, 20), new Range(10, 20)), 1);
43 assertEquals(comp.compare(new Range(10, 20), new Range(11, 20)), -1);
46 @Test(groups = "Functional")
47 public void testCompare_byEnd()
49 Comparator<ContiguousI> comp = RangeComparator.BY_END_POSITION;
51 // same end position, same length
52 assertEquals(comp.compare(new Range(10, 20), new Range(10, 20)), 0);
53 // same end position, len1 > len2
54 assertEquals(comp.compare(new Range(10, 20), new Range(11, 20)), -1);
55 // same end position, len1 < len2
56 assertEquals(comp.compare(new Range(11, 20), new Range(10, 20)), 1);
58 assertEquals(comp.compare(new Range(10, 21), new Range(10, 20)), 1);
60 assertEquals(comp.compare(new Range(10, 20), new Range(10, 21)), -1);