aboutsummaryrefslogtreecommitdiff
path: root/test/net/sourceforge/opentracking
diff options
context:
space:
mode:
Diffstat (limited to 'test/net/sourceforge/opentracking')
-rw-r--r--test/net/sourceforge/opentracking/protocol/gps103/Gps103ProtocolDecoderTest.java59
-rw-r--r--test/net/sourceforge/opentracking/protocol/xexun/XexunProtocolDecoderTest.java17
2 files changed, 66 insertions, 10 deletions
diff --git a/test/net/sourceforge/opentracking/protocol/gps103/Gps103ProtocolDecoderTest.java b/test/net/sourceforge/opentracking/protocol/gps103/Gps103ProtocolDecoderTest.java
new file mode 100644
index 000000000..3ec430db2
--- /dev/null
+++ b/test/net/sourceforge/opentracking/protocol/gps103/Gps103ProtocolDecoderTest.java
@@ -0,0 +1,59 @@
+package net.sourceforge.opentracking.protocol.gps103;
+
+import java.util.Date;
+import java.util.GregorianCalendar;
+import java.util.List;
+import org.junit.Test;
+import net.sourceforge.opentracking.Device;
+import net.sourceforge.opentracking.Position;
+import net.sourceforge.opentracking.DataManager;
+import static org.junit.Assert.*;
+
+public class Gps103ProtocolDecoderTest {
+
+ private class TestDataManager implements DataManager {
+ public List getDevices() {
+ return null;
+ }
+
+ public Device getDeviceByImei(String imei) {
+ Device device = new Device();
+ device.setId(new Long(1));
+ device.setImei("10000000000000");
+ return device;
+ }
+
+ public void setPosition(Position position) {
+ }
+ }
+
+ @Test
+ public void testDecode() throws Exception {
+
+ String testMsg1 = "##,imei:10000000000000,A";
+
+ String testMsg2 = "imei:10000000000000,help me,1004171910,,F,010203.000,A,0102.0003,N,00102.0003,E,1.02,";
+
+ Gps103ProtocolDecoder decoder = new Gps103ProtocolDecoder(new TestDataManager());
+ assertNull(decoder.decode(null, null, testMsg1));
+ Position position = (Position) decoder.decode(null, null, testMsg2);
+
+ //Date time = new GregorianCalendar(2003, 1, 1, 1, 2, 3).getTime();
+ //assertEquals(time, position.getTime());
+
+ assertEquals(true, position.getValid());
+
+ Double latitude = 1.0 + 2.0003 / 60.0;
+ assertEquals(latitude, position.getLatitude());
+
+ Double longitude = 1.0 + 2.0003 / 60.0;
+ assertEquals(longitude, position.getLongitude());
+
+ Double speed = 1.02;
+ assertEquals(speed, position.getSpeed());
+
+ Long deviceId = new Long(1);
+ assertEquals(deviceId, position.getDeviceId());
+ }
+
+} \ No newline at end of file
diff --git a/test/net/sourceforge/opentracking/protocol/xexun/XexunProtocolDecoderTest.java b/test/net/sourceforge/opentracking/protocol/xexun/XexunProtocolDecoderTest.java
index 04f0de48b..9adbc2c31 100644
--- a/test/net/sourceforge/opentracking/protocol/xexun/XexunProtocolDecoderTest.java
+++ b/test/net/sourceforge/opentracking/protocol/xexun/XexunProtocolDecoderTest.java
@@ -3,7 +3,6 @@ package net.sourceforge.opentracking.protocol.xexun;
import java.util.Date;
import java.util.GregorianCalendar;
import java.util.List;
-import java.util.LinkedList;
import org.junit.Test;
import net.sourceforge.opentracking.Device;
import net.sourceforge.opentracking.Position;
@@ -13,19 +12,18 @@ import static org.junit.Assert.*;
public class XexunProtocolDecoderTest {
private class TestDataManager implements DataManager {
- public List readDevice() {
- List deviceList = new LinkedList();
+ public List getDevices() {
+ return null;
+ }
+ public Device getDeviceByImei(String imei) {
Device device = new Device();
device.setId(new Long(1));
device.setImei("10000000000000");
-
- deviceList.add(device);
-
- return deviceList;
+ return device;
}
- public void writePosition(Position position) {
+ public void setPosition(Position position) {
}
}
@@ -33,9 +31,8 @@ public class XexunProtocolDecoderTest {
public void testDecode() throws Exception {
String testMsg =
- ",+10000000000," +
"GPRMC,010203.000,A,0102.0003,N,00102.0003,E,1.02,1.02,010203,,,A*00,F,, " +
- "imei:10000000000000,00,00.0,";
+ "imei:10000000000000,";
XexunProtocolDecoder decoder = new XexunProtocolDecoder(new TestDataManager());
Position position = (Position) decoder.decode(null, null, testMsg);