aboutsummaryrefslogtreecommitdiff
path: root/test/org/traccar/protocol
diff options
context:
space:
mode:
authorAnton Tananaev <anton.tananaev@gmail.com>2018-11-10 12:14:22 +1300
committerAnton Tananaev <anton.tananaev@gmail.com>2018-11-10 12:14:22 +1300
commitc327cac973c40af28151319badc94229b56ecfa2 (patch)
tree95b9e93f21956f238f380144b4a0f091ddd0e081 /test/org/traccar/protocol
parent76f85aee7141d1e7e75f59c46d7325fe35d08c19 (diff)
downloadtraccar-server-c327cac973c40af28151319badc94229b56ecfa2.tar.gz
traccar-server-c327cac973c40af28151319badc94229b56ecfa2.tar.bz2
traccar-server-c327cac973c40af28151319badc94229b56ecfa2.zip
Implement XRB 28 protocol
Diffstat (limited to 'test/org/traccar/protocol')
-rw-r--r--test/org/traccar/protocol/Xrb28ProtocolDecoderTest.java24
-rw-r--r--test/org/traccar/protocol/Xrb28ProtocolEncoderTest.java39
2 files changed, 63 insertions, 0 deletions
diff --git a/test/org/traccar/protocol/Xrb28ProtocolDecoderTest.java b/test/org/traccar/protocol/Xrb28ProtocolDecoderTest.java
new file mode 100644
index 000000000..441d7b811
--- /dev/null
+++ b/test/org/traccar/protocol/Xrb28ProtocolDecoderTest.java
@@ -0,0 +1,24 @@
+package org.traccar.protocol;
+
+import org.junit.Test;
+import org.traccar.ProtocolTest;
+
+public class Xrb28ProtocolDecoderTest extends ProtocolTest {
+
+ @Test
+ public void testDecode() throws Exception {
+
+ Xrb28ProtocolDecoder decoder = new Xrb28ProtocolDecoder(null);
+
+ verifyNull(decoder, text(
+ "\u00ff\u00ff*HBCR,OM,123456789123456,Q0,412,80#"));
+
+ verifyNull(decoder, text(
+ "\u00ff\u00ff*HBCR,OM,123456789123456,R0,0,55,1234,1497689816#"));
+
+ verifyPosition(decoder, text(
+ "\u00ff\u00ff*HBCR,OM,123456789123456,D0,0,124458.00,A,2237.7514,N,11408.6214,E,6,0.21,151216,10,M,A#"));
+
+ }
+
+}
diff --git a/test/org/traccar/protocol/Xrb28ProtocolEncoderTest.java b/test/org/traccar/protocol/Xrb28ProtocolEncoderTest.java
new file mode 100644
index 000000000..4b2ac2045
--- /dev/null
+++ b/test/org/traccar/protocol/Xrb28ProtocolEncoderTest.java
@@ -0,0 +1,39 @@
+package org.traccar.protocol;
+
+import org.junit.Test;
+import org.traccar.ProtocolTest;
+import org.traccar.model.Command;
+
+import static org.junit.Assert.assertEquals;
+
+public class Xrb28ProtocolEncoderTest extends ProtocolTest {
+
+ @Test
+ public void testEncodePositionPeriodic() {
+
+ Xrb28ProtocolEncoder encoder = new Xrb28ProtocolEncoder();
+
+ Command command = new Command();
+ command.setDeviceId(1);
+ command.setType(Command.TYPE_POSITION_PERIODIC);
+ command.set(Command.KEY_FREQUENCY, 300);
+
+ assertEquals("\u00ff\u00ff*HBCS,OM,123456789012345,D1,300#\n", encoder.encodeCommand(null, command));
+
+ }
+
+ @Test
+ public void testEncodeCustom() {
+
+ Xrb28ProtocolEncoder encoder = new Xrb28ProtocolEncoder();
+
+ Command command = new Command();
+ command.setDeviceId(1);
+ command.setType(Command.TYPE_CUSTOM);
+ command.set(Command.KEY_DATA, "S7,0,3,0,0,20,25");
+
+ assertEquals("\u00ff\u00ff*HBCS,OM,123456789012345,S7,0,3,0,0,20,25#\n", encoder.encodeCommand(null, command));
+
+ }
+
+}