1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17 package org.orekit.control.indirect.adjoint.cost;
18
19
20 import org.hipparchus.util.Binary64;
21 import org.hipparchus.util.Binary64Field;
22 import org.junit.jupiter.api.Assertions;
23 import org.junit.jupiter.api.Test;
24 import org.orekit.propagation.FieldSpacecraftState;
25 import org.orekit.propagation.events.EventDetectionSettings;
26 import org.orekit.propagation.events.FieldEventDetectionSettings;
27 import org.orekit.propagation.events.handlers.FieldEventHandler;
28 import org.orekit.propagation.events.handlers.FieldResetDerivativesOnEvent;
29
30 class FieldControlSwitchDetectorTest {
31
32 @Test
33 void testGetHandler() {
34
35 final TestDetector detector = new TestDetector(null);
36
37 final FieldEventHandler<Binary64> eventHandler = detector.getHandler();
38
39 Assertions.assertInstanceOf(FieldResetDerivativesOnEvent.class, eventHandler);
40 }
41
42 @Test
43 void testGetDetectionSettings() {
44
45 final FieldEventDetectionSettings<Binary64> detectionSettings = new FieldEventDetectionSettings<>(Binary64Field.getInstance(),
46 EventDetectionSettings.getDefaultEventDetectionSettings());
47 final TestDetector detector = new TestDetector(detectionSettings);
48
49 final FieldEventDetectionSettings<Binary64> actualSettings = detector.getDetectionSettings();
50
51 Assertions.assertEquals(detectionSettings, actualSettings);
52 }
53
54 private static class TestDetector extends FieldControlSwitchDetector<Binary64> {
55
56 protected TestDetector(FieldEventDetectionSettings<Binary64> detectionSettings) {
57 super(detectionSettings);
58 }
59
60 @Override
61 public Binary64 g(FieldSpacecraftState<Binary64> s) {
62 return Binary64.ZERO;
63 }
64 }
65 }