aboutsummaryrefslogtreecommitdiff
path: root/test/org/traccar
diff options
context:
space:
mode:
Diffstat (limited to 'test/org/traccar')
-rw-r--r--test/org/traccar/helper/TestIdentityManager.java13
-rw-r--r--test/org/traccar/protocol/Gps103ProtocolEncoderTest.java29
-rw-r--r--test/org/traccar/web/JsonConverterTest.java187
3 files changed, 84 insertions, 145 deletions
diff --git a/test/org/traccar/helper/TestIdentityManager.java b/test/org/traccar/helper/TestIdentityManager.java
index a4ddeeb09..d279241e4 100644
--- a/test/org/traccar/helper/TestIdentityManager.java
+++ b/test/org/traccar/helper/TestIdentityManager.java
@@ -4,17 +4,22 @@ import org.traccar.database.IdentityManager;
import org.traccar.model.Device;
public class TestIdentityManager implements IdentityManager {
+
+ private final Device device;
+
+ public TestIdentityManager() {
+ device = new Device();
+ device.setId(1);
+ device.setUniqueId("123456789012345");
+ }
@Override
public Device getDeviceById(long id) {
- return null;
+ return device;
}
@Override
public Device getDeviceByUniqueId(String imei) {
- Device device = new Device();
- device.setId(new Long(1));
- device.setUniqueId("123456789012345");
return device;
}
diff --git a/test/org/traccar/protocol/Gps103ProtocolEncoderTest.java b/test/org/traccar/protocol/Gps103ProtocolEncoderTest.java
new file mode 100644
index 000000000..74091d0e0
--- /dev/null
+++ b/test/org/traccar/protocol/Gps103ProtocolEncoderTest.java
@@ -0,0 +1,29 @@
+package org.traccar.protocol;
+
+import java.util.HashMap;
+import java.util.Map;
+import org.junit.Assert;
+import org.junit.Test;
+import org.traccar.model.Command;
+
+public class Gps103ProtocolEncoderTest {
+
+ @Test
+ public void testDecode() throws Exception {
+
+ Gps103ProtocolEncoder encoder = new Gps103ProtocolEncoder();
+
+ Command command = new Command();
+ command.setDeviceId(1);
+ command.setType(Command.TYPE_POSITION_FIX);
+
+ Map<String, Object> other = new HashMap<>();
+ other.put(Command.KEY_FREQUENCY, 300l);
+
+ command.setOther(other);
+
+ Assert.assertEquals("**,imei:123456789012345,C,05m", encoder.encodeCommand(command));
+
+ }
+
+}
diff --git a/test/org/traccar/web/JsonConverterTest.java b/test/org/traccar/web/JsonConverterTest.java
index 07d70d3f2..b02ec2d40 100644
--- a/test/org/traccar/web/JsonConverterTest.java
+++ b/test/org/traccar/web/JsonConverterTest.java
@@ -1,170 +1,75 @@
package org.traccar.web;
-import org.junit.Test;
-import org.traccar.model.Factory;
-
-import java.io.Reader;
import java.io.StringReader;
import java.text.ParseException;
import java.util.Calendar;
import java.util.Date;
-
import static org.junit.Assert.assertEquals;
-import static org.junit.Assert.assertNotNull;
+import org.junit.Test;
+import org.traccar.model.Factory;
public class JsonConverterTest {
- private <T extends Factory> T convert(String jsonString, T prototype) throws ParseException {
- Reader r = new StringReader(
- jsonString);
-
- return JsonConverter.objectFromJson(r, prototype);
- }
-
@Test
public void primitiveConversion() throws ParseException {
- AllPrimitives o = convert("{" +
- "\"aBoolean\": true, " +
- "\"anInt\": 42, " +
- "\"aDouble\": 41.99, " +
- "\"aString\": \"discworld\", " +
- "\"aDate\":\"2015-07-09T19:02:17\"" +
- "}",
- new AllPrimitives());
-
- assertEquals(true, o.getaBoolean());
- assertEquals(42, o.getAnInt());
- assertEquals(41.99, o.getaDouble(), 0.001);
- assertEquals("discworld", o.getaString());
+ Primitives o = JsonConverter.objectFromJson(new StringReader(
+ "{" +
+ "\"boolean\": true, " +
+ "\"int\": 42, " +
+ "\"double\": 41.99, " +
+ "\"string\": \"discworld\", " +
+ "\"date\":\"2015-07-09T19:02:17\"" +
+ "}"),
+ new Primitives());
+
+ assertEquals(true, o.getBoolean());
+ assertEquals(42, o.getInt());
+ assertEquals(41.99, o.getDouble(), 0.001);
+ assertEquals("discworld", o.getString());
Calendar c = Calendar.getInstance();
- c.setTime(o.getaDate());
+ c.setTime(o.getDate());
assertEquals(2015, c.get(Calendar.YEAR));
assertEquals(Calendar.JULY, c.get(Calendar.MONTH));
assertEquals(9, c.get(Calendar.DAY_OF_MONTH));
assertEquals(19, c.get(Calendar.HOUR_OF_DAY));
assertEquals(2, c.get(Calendar.MINUTE));
assertEquals(17, c.get(Calendar.SECOND));
- }
-
- public static class AllPrimitives implements Factory {
-
- private boolean aBoolean;
- private int anInt;
- private double aDouble;
- private String aString;
- private Date aDate;
-
-
- @Override
- public Object create() {
- return new AllPrimitives();
- }
-
- public boolean getaBoolean() {
- return aBoolean;
- }
-
- public void setaBoolean(boolean aBoolean) {
- this.aBoolean = aBoolean;
- }
-
- public int getAnInt() {
- return anInt;
- }
-
- public void setAnInt(int anInt) {
- this.anInt = anInt;
- }
-
- public double getaDouble() {
- return aDouble;
- }
-
- public void setaDouble(double aDouble) {
- this.aDouble = aDouble;
- }
-
- public String getaString() {
- return aString;
- }
-
- public void setaString(String aString) {
- this.aString = aString;
- }
- public Date getaDate() {
- return aDate;
- }
-
- public void setaDate(Date aDate) {
- this.aDate = aDate;
- }
- }
-
-
- @Test
- public void enumConversion() throws ParseException {
- ObjectWithEnum o = convert("{\"anEnum\": \"VALUE2\"}", new ObjectWithEnum());
- assertEquals(TestEnum.VALUE2, o.getAnEnum());
- }
-
-
- public enum TestEnum {
- VALUE1, VALUE2
}
- public static class ObjectWithEnum implements Factory {
- private TestEnum anEnum;
-
- public TestEnum getAnEnum() {
- return anEnum;
- }
-
- public void setAnEnum(TestEnum anEnum) {
- this.anEnum = anEnum;
- }
-
+ public static class Primitives implements Factory {
+
@Override
- public Object create() {
- return new ObjectWithEnum();
- }
- }
-
+ public Primitives create() {
+ return new Primitives();
+ }
+
+ private boolean b;
+ public boolean getBoolean() { return b; }
+ public void setBoolean(boolean b) { this.b = b; }
+
+ private int i;
+ public int getInt() { return i; }
+ public void setInt(int i) { this.i = i; }
+
+ private long l;
+ public long getLong() { return l; }
+ public void setLong(long l) { this.l = l; }
+
+ private double d;
+ public double getDouble() { return d; }
+ public void setDouble(double d) { this.d = d; }
+
+ private String s;
+ public String getString() { return s; }
+ public void setString(String s) { this.s = s; }
+
+ private Date t;
+ public Date getDate() { return t; }
+ public void setDate(Date t) { this.t = t; }
- @Test
- public void nestedObjectsConversion() throws ParseException {
- NestedObjects o = convert("{\"name\": \"Rincewind\", \"nestedObject\": {\"anEnum\":\"VALUE1\"}}", new NestedObjects());
- assertEquals("Rincewind", o.getName());
- assertNotNull("The nested object should be populated", o.getNestedObject());
- assertEquals(TestEnum.VALUE1, o.getNestedObject().getAnEnum());
}
- public static class NestedObjects implements Factory {
-
- private String name;
- private ObjectWithEnum nestedObject;
-
- public String getName() {
- return name;
- }
-
- public void setName(String name) {
- this.name = name;
- }
-
- public ObjectWithEnum getNestedObject() {
- return nestedObject;
- }
-
- public void setNestedObject(ObjectWithEnum nestedObject) {
- this.nestedObject = nestedObject;
- }
-
- @Override
- public Object create() {
- return new NestedObjects();
- }
- }
}