diff options
author | Haidong Ji | 2018-09-22 14:54:42 -0500 |
---|---|---|
committer | Haidong Ji | 2018-09-22 14:54:42 -0500 |
commit | 68cad41492dc546c7f9a5459c991892d5b01abca (patch) | |
tree | d98356828d07524e0523d179c7bd8ddfef3975f1 /AlgoDesignAndTechniqueEdxJava/tests | |
parent | aa32f7835fa2776e29fb42c3bdac06ab1f489d0f (diff) |
Check in for my Wisconsin marathon trip
Diffstat (limited to 'AlgoDesignAndTechniqueEdxJava/tests')
-rw-r--r-- | AlgoDesignAndTechniqueEdxJava/tests/CoveringSegmentsTest.java | 48 |
1 files changed, 48 insertions, 0 deletions
diff --git a/AlgoDesignAndTechniqueEdxJava/tests/CoveringSegmentsTest.java b/AlgoDesignAndTechniqueEdxJava/tests/CoveringSegmentsTest.java new file mode 100644 index 0000000..2f25158 --- /dev/null +++ b/AlgoDesignAndTechniqueEdxJava/tests/CoveringSegmentsTest.java @@ -0,0 +1,48 @@ +import static org.junit.jupiter.api.Assertions.*; + +import java.util.Arrays; +import java.util.HashSet; +import java.util.Set; + +import org.junit.jupiter.api.Test; + +class CoveringSegmentsTest { + + @Test + void testSegment() { + CoveringSegments.Segment s = new CoveringSegments.Segment(1, 2); + assertEquals(s.start, 1); + } + + @Test + void testSegmentArray() { + CoveringSegments.Segment[] s = new CoveringSegments.Segment[2]; + s[0] = new CoveringSegments.Segment(3, 4); + s[1] = new CoveringSegments.Segment(1, 2); + Arrays.sort(s); + assertEquals(1, s[0].start); + } + + @Test + void testSegmentArrayRemoveDups() { + CoveringSegments.Segment[] s = new CoveringSegments.Segment[3]; + s[0] = new CoveringSegments.Segment(3, 4); + s[1] = new CoveringSegments.Segment(1, 2); + s[2] = new CoveringSegments.Segment(1, 2); + Arrays.sort(s); + Set<CoveringSegments.Segment> set = new HashSet<CoveringSegments.Segment>(Arrays.asList(s)); + assertEquals(2, set.size()); + } + + @Test + void testGetOptimalPoints() { + Set<CoveringSegments.Segment> set = new HashSet<CoveringSegments.Segment>(); + set.add(new CoveringSegments.Segment(1, 3)); + set.add(new CoveringSegments.Segment(2, 5)); + set.add(new CoveringSegments.Segment(3, 6)); + CoveringSegments.Segment[] s = set.stream().toArray(CoveringSegments.Segment[]::new); + Arrays.sort(s); + assertEquals(1, CoveringSegments.getOptimalPoints(s).length); + } + +} |