1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17 package org.orekit.propagation.events.handlers;
18
19 import org.hipparchus.ode.events.Action;
20 import org.hipparchus.util.Binary64;
21 import org.junit.jupiter.api.Assertions;
22 import org.junit.jupiter.params.ParameterizedTest;
23 import org.junit.jupiter.params.provider.ValueSource;
24 import org.orekit.propagation.FieldSpacecraftState;
25 import org.orekit.propagation.events.FieldEventDetector;
26
27 class FieldCountingHandlerTest {
28
29 @ParameterizedTest
30 @ValueSource(booleans = {false, true})
31 void testEventOccurred(final boolean countAll) {
32
33 final FieldCountingHandler<Binary64> handler = new TestHandler(countAll, Action.CONTINUE);
34 final int calls = 42;
35
36 for (int i = 0; i < calls; i++) {
37 handler.eventOccurred(null, null, true);
38 }
39
40 Assertions.assertEquals(countAll ? calls : 0, handler.getCount());
41 }
42
43 private static class TestHandler extends FieldCountingHandler<Binary64> {
44
45 private final boolean countAll;
46
47 TestHandler(final boolean countAll, final Action action) {
48 super(0, action);
49 this.countAll = countAll;
50 }
51
52 @Override
53 protected boolean doesCount(FieldSpacecraftState<Binary64> state, FieldEventDetector<Binary64> detector, boolean increasing) {
54 return countAll;
55 }
56 }
57
58 }