1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22 package org.hipparchus.geometry.spherical.oned;
23
24 import org.hipparchus.exception.MathIllegalArgumentException;
25 import org.hipparchus.util.MathUtils;
26 import org.junit.jupiter.api.Test;
27
28 import static org.junit.jupiter.api.Assertions.assertEquals;
29 import static org.junit.jupiter.api.Assertions.assertFalse;
30 import static org.junit.jupiter.api.Assertions.assertThrows;
31 import static org.junit.jupiter.api.Assertions.assertTrue;
32
33 class LimitAngleTest {
34
35 @Test
36 void testReversedLimit() {
37 for (int k = -2; k < 3; ++k) {
38 LimitAngle l = new LimitAngle(new S1Point(1.0 + k * MathUtils.TWO_PI), false, 1.0e-10);
39 assertEquals(l.getLocation().getAlpha(), l.getReverse().getLocation().getAlpha(), 1.0e-10);
40 assertEquals(l.getTolerance(), l.getReverse().getTolerance(), 1.0e-10);
41 assertTrue(l.sameOrientationAs(l));
42 assertFalse(l.sameOrientationAs(l.getReverse()));
43 assertEquals(MathUtils.TWO_PI, l.wholeSpace().getSize(), 1.0e-10);
44 assertEquals(MathUtils.TWO_PI, l.getReverse().wholeSpace().getSize(), 1.0e-10);
45 }
46 }
47
48 @Test
49 void testTooSmallTolerance() {
50 assertThrows(MathIllegalArgumentException.class, () -> {
51 new LimitAngle(new S1Point(1.0), false, 0.9 * Sphere1D.SMALLEST_TOLERANCE);
52 });
53 }
54
55 }