Skip to content

Commit dcfcf7b

Browse files
committed
Created UltraSonicSensor Test
1 parent fafaf94 commit dcfcf7b

1 file changed

Lines changed: 44 additions & 2 deletions

File tree

pi4micronaut-utils/src/test/java/com/opensourcewithslu/inputdevices/UltraSonicSensorHelperTest.java

Lines changed: 44 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -5,25 +5,67 @@
55
import org.junit.jupiter.api.BeforeEach;
66
import org.junit.jupiter.api.Test;
77
import org.mockito.Mockito;
8+
import org.slf4j.Logger;
9+
10+
import java.lang.reflect.Method;
11+
812

913
import static org.junit.jupiter.api.Assertions.*;
1014
import static org.mockito.Mockito.*;
1115

16+
1217
class UltraSonicSensorHelperTest {
1318

1419
private DigitalOutput mockTriggerPin;
1520
private DigitalInput mockEchoPin;
1621
private UltraSonicSensorHelper sensorHelper;
1722

23+
Logger log = mock(Logger.class);
24+
1825
@BeforeEach
1926
void setUp() {
20-
// Create "fake" pins using Mockito
2127
mockTriggerPin = Mockito.mock(DigitalOutput.class);
2228
mockEchoPin = Mockito.mock(DigitalInput.class);
2329

24-
// Pass them into the helper
2530
sensorHelper = new UltraSonicSensorHelper(mockTriggerPin, mockEchoPin);
2631
}
2732

2833
@Test
34+
void testInitialization() {
35+
verify(mockTriggerPin).low();
36+
assertEquals(0.0, sensorHelper.getDistanceInCentimeter());
37+
}
38+
39+
@Test
40+
void testStartMeasuring() throws InterruptedException {
41+
sensorHelper.stopMeasuring();
42+
sensorHelper.startMeasuring();
43+
44+
assertDoesNotThrow(sensorHelper::startMeasuring);
45+
}
46+
47+
@Test
48+
void testTriggerAndMeasureDistance() throws Exception {
49+
Method method = UltraSonicSensorHelper.class.getDeclaredMethod("triggerAndMeasureDistance");
50+
method.setAccessible(true);
51+
52+
when(mockTriggerPin.isHigh()).thenReturn(true);
53+
when(mockEchoPin.isHigh()).thenReturn(true).thenReturn(false);
54+
55+
method.invoke(sensorHelper);
56+
57+
assertTrue(sensorHelper.getDistanceInCentimeter() >= 0);
58+
}
59+
60+
@Test
61+
void testCalculateDistance() {}
62+
63+
@Test
64+
void testgetDistanceInCentemeter() {}
65+
66+
@Test
67+
void testgetDistanceInMeters() {}
68+
69+
@Test
70+
void stopMeasuring() {}
2971
}

0 commit comments

Comments
 (0)