session-android/app/src/test/java/org/thoughtcrime/securesms/jobmanager/impl/JsonDataSerializerTest.java

47 lines
1.9 KiB
Java

package org.thoughtcrime.securesms.jobmanager.impl;
import org.junit.Test;
import org.session.libsession.messaging.utilities.Data;
import org.session.libsession.utilities.Util;
import java.io.IOException;
import static org.junit.Assert.*;
public final class JsonDataSerializerTest {
private static final float FloatDelta = 0.00001f;
@Test
public void deserialize_dataMatchesExpected() throws IOException {
Data data = new JsonDataSerializer().deserialize(Util.readFullyAsString(ClassLoader.getSystemClassLoader().getResourceAsStream("data/data_serialized.json")));
assertEquals("s1 value", data.getString("s1"));
assertEquals("s2 value", data.getString("s2"));
assertArrayEquals(new String[]{ "a", "b", "c" }, data.getStringArray("s_array_1"));
assertEquals(1, data.getInt("i1"));
assertEquals(2, data.getInt("i2"));
assertEquals(Integer.MAX_VALUE, data.getInt("max"));
assertEquals(Integer.MIN_VALUE, data.getInt("min"));
assertArrayEquals(new int[]{ 1, 2, 3, Integer.MAX_VALUE, Integer.MIN_VALUE }, data.getIntegerArray("i_array_1"));
assertEquals(10, data.getLong("l1"));
assertEquals(20, data.getLong("l2"));
assertEquals(Long.MAX_VALUE, data.getLong("max"));
assertEquals(Long.MIN_VALUE, data.getLong("min"));
assertArrayEquals(new long[]{ 1, 2, 3, Long.MAX_VALUE, Long.MIN_VALUE }, data.getLongArray("l_array_1"));
assertEquals(1.2f, data.getFloat("f1"), FloatDelta);
assertEquals(3.4f, data.getFloat("f2"), FloatDelta);
assertArrayEquals(new float[]{ 5.6f, 7.8f }, data.getFloatArray("f_array_1"), FloatDelta);
assertEquals(10.2, data.getDouble("d1"), FloatDelta);
assertEquals(30.4, data.getDouble("d2"), FloatDelta);
assertArrayEquals(new double[]{ 50.6, 70.8 }, data.getDoubleArray("d_array_1"), FloatDelta);
assertTrue(data.getBoolean("b1"));
assertFalse(data.getBoolean("b2"));
assertArrayEquals(new boolean[]{ false, true }, data.getBooleanArray("b_array_1"));
}
}