Skip to content

Commit 5636b26

Browse files
committed
convenience factory interval(int, int)
1 parent b024946 commit 5636b26

File tree

7 files changed

+25
-29
lines changed

7 files changed

+25
-29
lines changed

src/main/java/net/itarray/automotion/internal/geometry/Interval.java

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,8 @@
22

33
import java.util.Objects;
44

5+
import static net.itarray.automotion.internal.geometry.Scalar.scalar;
6+
57
public abstract class Interval {
68

79
private Interval() {
@@ -14,6 +16,10 @@ public static Interval interval(Scalar begin, Scalar end) {
1416
return new NonEmpty(begin, end);
1517
}
1618

19+
public static Interval interval(int begin, int end) {
20+
return interval(scalar(begin), scalar(end));
21+
}
22+
1723
private static String format(String begin, String end) {
1824
return String.format("[%s, %s[", begin, end);
1925
}

src/test/java/net/itarray/automotion/tests/geometry/ContainedIntervalsTest.java

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,21 +1,19 @@
11
package net.itarray.automotion.tests.geometry;
22

33
import net.itarray.automotion.internal.geometry.Interval;
4-
import net.itarray.automotion.internal.geometry.Scalar;
54
import org.junit.Test;
65

76
import static net.itarray.automotion.internal.geometry.Interval.interval;
8-
import static net.itarray.automotion.internal.geometry.Scalar.scalar;
97
import static org.assertj.core.api.Assertions.assertThat;
108

119
public class ContainedIntervalsTest extends TwoIntervalsTest{
1210

1311
public Interval left() {
14-
return interval(scalar(12), scalar(15));
12+
return interval(12, 15);
1513
}
1614

1715
public Interval right() {
18-
return interval(scalar(20), scalar(20));
16+
return interval(20, 20);
1917
}
2018

2119
@Test

src/test/java/net/itarray/automotion/tests/geometry/DisjointIntervalsTest.java

Lines changed: 3 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,21 +1,19 @@
11
package net.itarray.automotion.tests.geometry;
22

33
import net.itarray.automotion.internal.geometry.Interval;
4-
import net.itarray.automotion.internal.geometry.Scalar;
54
import org.junit.Test;
65

76
import static net.itarray.automotion.internal.geometry.Interval.interval;
8-
import static net.itarray.automotion.internal.geometry.Scalar.scalar;
97
import static org.assertj.core.api.Assertions.assertThat;
108

119
public class DisjointIntervalsTest extends TwoIntervalsTest{
1210

1311
public Interval left() {
14-
return interval(scalar(2), scalar(8));
12+
return interval(2, 8);
1513
}
1614

1715
public Interval right() {
18-
return interval(scalar(10), scalar(17));
16+
return interval(10, 17);
1917
}
2018

2119
@Test
@@ -25,7 +23,7 @@ public void haveEmptyIntersection() {
2523

2624
@Test
2725
public void haveSpanFromSmallestBeginToLargestEnd() {
28-
Interval span = interval(scalar(2), scalar(17));
26+
Interval span = interval(2, 17);
2927
assertThat(right().span(left())).isEqualTo(span);
3028
assertThat(left().span(right())).isEqualTo(span);
3129
}

src/test/java/net/itarray/automotion/tests/geometry/EmptyAndNonEmptyIntervalsTest.java

Lines changed: 4 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,31 +1,29 @@
11
package net.itarray.automotion.tests.geometry;
22

33
import net.itarray.automotion.internal.geometry.Interval;
4-
import net.itarray.automotion.internal.geometry.Scalar;
54
import org.junit.Test;
65

76
import static net.itarray.automotion.internal.geometry.Interval.interval;
8-
import static net.itarray.automotion.internal.geometry.Scalar.scalar;
97
import static org.assertj.core.api.Assertions.assertThat;
108

119
public class EmptyAndNonEmptyIntervalsTest extends TwoIntervalsTest{
1210

1311
public Interval left() {
14-
return interval(scalar(12), scalar(15));
12+
return interval(12, 15);
1513
}
1614

1715
public Interval right() {
18-
return interval(scalar(10), scalar(17));
16+
return interval(10, 17);
1917
}
2018

2119
@Test
2220
public void haveIntersectionBeginningAtLargerStartAndEndingAtSmallerEnd() {
23-
assertThat(right().intersect(left())).isEqualTo(interval(scalar(12), scalar(15)));
21+
assertThat(right().intersect(left())).isEqualTo(interval(12, 15));
2422
}
2523

2624
@Test
2725
public void haveSpanFromSmallestBeginToLargestEnd() {
28-
Interval span = interval(scalar(10), scalar(17));
26+
Interval span = interval(10, 17);
2927
assertThat(right().span(left())).isEqualTo(span);
3028
assertThat(left().span(right())).isEqualTo(span);
3129
}

src/test/java/net/itarray/automotion/tests/geometry/EmptyIntervalTest.java

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -29,13 +29,13 @@ public void isEmpty() {
2929

3030
@Test
3131
public void isEqualToIntervalsOtherEmptyIntervals() {
32-
assertThat(interval).isEqualTo(interval(scalar(100), scalar(99)));
33-
assertThat(interval.hashCode()).isEqualTo(interval(scalar(100), scalar(99)).hashCode());
32+
assertThat(interval).isEqualTo(interval(100, 99));
33+
assertThat(interval.hashCode()).isEqualTo(interval(100, 99).hashCode());
3434
}
3535

3636
@Test
3737
public void isNotEqualToNonEmptyIntervals() {
38-
assertThat(interval).isNotEqualTo(interval(scalar(10), scalar(20)));
38+
assertThat(interval).isNotEqualTo(interval(10, 20));
3939
}
4040

4141
}

src/test/java/net/itarray/automotion/tests/geometry/OverlappingIntervalsTest.java

Lines changed: 4 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,30 +1,28 @@
11
package net.itarray.automotion.tests.geometry;
22

33
import net.itarray.automotion.internal.geometry.Interval;
4-
import net.itarray.automotion.internal.geometry.Scalar;
54
import org.junit.Test;
65

76
import static net.itarray.automotion.internal.geometry.Interval.interval;
8-
import static net.itarray.automotion.internal.geometry.Scalar.scalar;
97
import static org.assertj.core.api.Assertions.assertThat;
108

119
public class OverlappingIntervalsTest extends TwoIntervalsTest{
1210

1311
public Interval left() {
14-
return interval(scalar(2), scalar(12));
12+
return interval(2, 12);
1513
}
1614

1715
public Interval right() {
18-
return interval(scalar(10), scalar(17));
16+
return interval(10, 17);
1917
}
2018

2119
@Test
2220
public void haveIntersectionBeginningAtLargerStartAndEndingAtSmallerEnd() {
23-
assertThat(right().intersect(left())).isEqualTo(interval(scalar(10), scalar(12)));
21+
assertThat(right().intersect(left())).isEqualTo(interval(10, 12));
2422
}
2523
@Test
2624
public void haveSpanFromSmallestBeginToLargestEnd() {
27-
Interval span = interval(scalar(2), scalar(17));
25+
Interval span = interval(2, 17);
2826
assertThat(right().span(left())).isEqualTo(span);
2927
assertThat(left().span(right())).isEqualTo(span);
3028
}

src/test/java/net/itarray/automotion/tests/geometry/TouchingIntervalsTest.java

Lines changed: 3 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,21 +1,19 @@
11
package net.itarray.automotion.tests.geometry;
22

33
import net.itarray.automotion.internal.geometry.Interval;
4-
import net.itarray.automotion.internal.geometry.Scalar;
54
import org.junit.Test;
65

76
import static net.itarray.automotion.internal.geometry.Interval.interval;
8-
import static net.itarray.automotion.internal.geometry.Scalar.scalar;
97
import static org.assertj.core.api.Assertions.assertThat;
108

119
public class TouchingIntervalsTest extends TwoIntervalsTest{
1210

1311
public Interval left() {
14-
return interval(scalar(2), scalar(10));
12+
return interval(2, 10);
1513
}
1614

1715
public Interval right() {
18-
return interval(scalar(10), scalar(17));
16+
return interval(10, 17);
1917
}
2018

2119
@Test
@@ -25,7 +23,7 @@ public void haveEmptyIntersection() {
2523

2624
@Test
2725
public void haveSpanFromSmallestBeginToLargestEnd() {
28-
Interval span = interval(scalar(2), scalar(17));
26+
Interval span = interval(2, 17);
2927
assertThat(right().span(left())).isEqualTo(span);
3028
assertThat(left().span(right())).isEqualTo(span);
3129
}

0 commit comments

Comments
 (0)