diff options
author | Anton Tananaev <anton.tananaev@gmail.com> | 2010-04-11 14:32:30 +0000 |
---|---|---|
committer | Anton Tananaev <anton.tananaev@gmail.com> | 2010-04-11 14:32:30 +0000 |
commit | 794c0ef3f92e5031dd7722325933d4cefdfce047 (patch) | |
tree | c0b573e68a4aebea3a0ac9817082740d86fdd1d3 /test/net/sourceforge | |
parent | c9e11760f2131a9d0123c8575eaafc22dca407e3 (diff) | |
download | trackermap-server-794c0ef3f92e5031dd7722325933d4cefdfce047.tar.gz trackermap-server-794c0ef3f92e5031dd7722325933d4cefdfce047.tar.bz2 trackermap-server-794c0ef3f92e5031dd7722325933d4cefdfce047.zip |
Import project
Diffstat (limited to 'test/net/sourceforge')
-rw-r--r-- | test/net/sourceforge/opentracking/protocol/xexun/XexunProtocolDecoderTest.java | 64 |
1 files changed, 64 insertions, 0 deletions
diff --git a/test/net/sourceforge/opentracking/protocol/xexun/XexunProtocolDecoderTest.java b/test/net/sourceforge/opentracking/protocol/xexun/XexunProtocolDecoderTest.java new file mode 100644 index 000000000..04f0de48b --- /dev/null +++ b/test/net/sourceforge/opentracking/protocol/xexun/XexunProtocolDecoderTest.java @@ -0,0 +1,64 @@ +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; +import net.sourceforge.opentracking.DataManager; +import static org.junit.Assert.*; + +public class XexunProtocolDecoderTest { + + private class TestDataManager implements DataManager { + public List readDevice() { + List deviceList = new LinkedList(); + + Device device = new Device(); + device.setId(new Long(1)); + device.setImei("10000000000000"); + + deviceList.add(device); + + return deviceList; + } + + public void writePosition(Position position) { + } + } + + @Test + 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,"; + + XexunProtocolDecoder decoder = new XexunProtocolDecoder(new TestDataManager()); + Position position = (Position) decoder.decode(null, null, testMsg); + + 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()); + + Double course = 1.02; + assertEquals(course, position.getCourse()); + + Long deviceId = new Long(1); + assertEquals(deviceId, position.getDeviceId()); + } + +} |