aboutsummaryrefslogtreecommitdiff
path: root/test/org/traccar/events/MotionEventHandlerTest.java
diff options
context:
space:
mode:
authorAnton Tananaev <anton.tananaev@gmail.com>2017-08-14 23:42:41 +1200
committerGitHub <noreply@github.com>2017-08-14 23:42:41 +1200
commit52d19ba205d76d18d62789fbb013a43fef024e91 (patch)
tree70118d6bb9c4894d043d46c32cc4558f6a00bbd3 /test/org/traccar/events/MotionEventHandlerTest.java
parent30e8409375f9992a5248f7e2597691c0ee08188c (diff)
parentfdc14dd2a286b7d9470ff97703d120c217a39dcb (diff)
downloadtrackermap-server-52d19ba205d76d18d62789fbb013a43fef024e91.tar.gz
trackermap-server-52d19ba205d76d18d62789fbb013a43fef024e91.tar.bz2
trackermap-server-52d19ba205d76d18d62789fbb013a43fef024e91.zip
Merge pull request #3443 from Abyss777/stop_on_ignition_off
Correct stop state by ignition.
Diffstat (limited to 'test/org/traccar/events/MotionEventHandlerTest.java')
-rw-r--r--test/org/traccar/events/MotionEventHandlerTest.java30
1 files changed, 28 insertions, 2 deletions
diff --git a/test/org/traccar/events/MotionEventHandlerTest.java b/test/org/traccar/events/MotionEventHandlerTest.java
index 6b7b9daee..826f4c4e5 100644
--- a/test/org/traccar/events/MotionEventHandlerTest.java
+++ b/test/org/traccar/events/MotionEventHandlerTest.java
@@ -1,6 +1,7 @@
package org.traccar.events;
import static org.junit.Assert.assertEquals;
+import static org.junit.Assert.assertFalse;
import static org.junit.Assert.assertNotNull;
import static org.junit.Assert.assertNull;
import static org.junit.Assert.assertTrue;
@@ -29,7 +30,7 @@ public class MotionEventHandlerTest extends BaseTest {
@Test
public void testMotionWithPosition() throws Exception {
MotionEventHandler motionEventHandler = new MotionEventHandler(
- new TripsConfig(500, 300 * 1000, 300 * 1000, false, 0));
+ new TripsConfig(500, 300 * 1000, 300 * 1000, false, 0, false));
Position position = new Position();
position.setTime(date("2017-01-01 00:00:00"));
@@ -68,7 +69,7 @@ public class MotionEventHandlerTest extends BaseTest {
@Test
public void testMotionWithStatus() throws Exception {
MotionEventHandler motionEventHandler = new MotionEventHandler(
- new TripsConfig(500, 300 * 1000, 300 * 1000, false, 0));
+ new TripsConfig(500, 300 * 1000, 300 * 1000, false, 0, false));
Position position = new Position();
position.setTime(new Date(System.currentTimeMillis() - 360000));
@@ -85,4 +86,29 @@ public class MotionEventHandlerTest extends BaseTest {
assertNull(deviceState.getMotionPosition());
}
+ @Test
+ public void testStopWithPositionIgnition() throws Exception {
+ MotionEventHandler motionEventHandler = new MotionEventHandler(
+ new TripsConfig(500, 300 * 1000, 300 * 1000, false, 0, true));
+
+ Position position = new Position();
+ position.setTime(date("2017-01-01 00:00:00"));
+ position.set(Position.KEY_MOTION, false);
+ position.set(Position.KEY_IGNITION, true);
+ DeviceState deviceState = new DeviceState();
+ deviceState.setMotionState(true);
+ deviceState.setMotionPosition(position);
+
+ Position nextPosition = new Position();
+ nextPosition.setTime(date("2017-01-01 00:02:00"));
+ nextPosition.set(Position.KEY_MOTION, false);
+ nextPosition.set(Position.KEY_IGNITION, false);
+
+ Event event = motionEventHandler.updateMotionState(deviceState, nextPosition);
+ assertNotNull(event);
+ assertEquals(Event.TYPE_DEVICE_STOPPED, event.getType());
+ assertFalse(deviceState.getMotionState());
+ assertNull(deviceState.getMotionPosition());
+ }
+
}