Add new testcases (#1638)
* Json Primitive Tests * Json Tree Writer tests * Add Tests for ISO8601Utils * Add Tests for ISO8601Utils
This commit is contained in:
parent
530cb74470
commit
4d735f1903
@ -108,6 +108,9 @@ public class JsonPrimitiveTest extends TestCase {
|
|||||||
assertTrue(json.isString());
|
assertTrue(json.isString());
|
||||||
assertEquals('z', json.getAsCharacter());
|
assertEquals('z', json.getAsCharacter());
|
||||||
assertEquals("z", json.getAsString());
|
assertEquals("z", json.getAsString());
|
||||||
|
|
||||||
|
json = new JsonPrimitive(true);
|
||||||
|
assertEquals("true", json.getAsString());
|
||||||
}
|
}
|
||||||
|
|
||||||
public void testExponential() throws Exception {
|
public void testExponential() throws Exception {
|
||||||
|
@ -120,6 +120,34 @@ public final class JsonTreeWriterTest extends TestCase {
|
|||||||
assertEquals(JsonNull.INSTANCE, writer.get());
|
assertEquals(JsonNull.INSTANCE, writer.get());
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public void testBeginArray() throws Exception {
|
||||||
|
JsonTreeWriter writer = new JsonTreeWriter();
|
||||||
|
assertEquals(writer, writer.beginArray());
|
||||||
|
}
|
||||||
|
|
||||||
|
public void testBeginObject() throws Exception {
|
||||||
|
JsonTreeWriter writer = new JsonTreeWriter();
|
||||||
|
assertEquals(writer, writer.beginObject());
|
||||||
|
}
|
||||||
|
|
||||||
|
public void testValueString() throws Exception {
|
||||||
|
JsonTreeWriter writer = new JsonTreeWriter();
|
||||||
|
String n = "as";
|
||||||
|
assertEquals(writer, writer.value(n));
|
||||||
|
}
|
||||||
|
|
||||||
|
public void testBoolValue() throws Exception {
|
||||||
|
JsonTreeWriter writer = new JsonTreeWriter();
|
||||||
|
boolean bool = true;
|
||||||
|
assertEquals(writer, writer.value(bool));
|
||||||
|
}
|
||||||
|
|
||||||
|
public void testBoolMaisValue() throws Exception {
|
||||||
|
JsonTreeWriter writer = new JsonTreeWriter();
|
||||||
|
Boolean bool = true;
|
||||||
|
assertEquals(writer, writer.value(bool));
|
||||||
|
}
|
||||||
|
|
||||||
public void testLenientNansAndInfinities() throws IOException {
|
public void testLenientNansAndInfinities() throws IOException {
|
||||||
JsonTreeWriter writer = new JsonTreeWriter();
|
JsonTreeWriter writer = new JsonTreeWriter();
|
||||||
writer.setLenient(true);
|
writer.setLenient(true);
|
||||||
|
@ -0,0 +1,101 @@
|
|||||||
|
package com.google.gson.internal.bind.util;
|
||||||
|
|
||||||
|
import org.junit.Rule;
|
||||||
|
import org.junit.Test;
|
||||||
|
import org.junit.rules.ExpectedException;
|
||||||
|
|
||||||
|
import java.text.ParseException;
|
||||||
|
import java.text.ParsePosition;
|
||||||
|
import java.util.*;
|
||||||
|
|
||||||
|
import static org.junit.Assert.assertEquals;
|
||||||
|
|
||||||
|
public class ISO8601UtilsTest {
|
||||||
|
|
||||||
|
@Rule
|
||||||
|
public final ExpectedException exception = ExpectedException.none();
|
||||||
|
|
||||||
|
@Test
|
||||||
|
public void testDateFormatString() {
|
||||||
|
Date date = new GregorianCalendar(2018, Calendar.JUNE, 25).getTime();
|
||||||
|
String dateStr = ISO8601Utils.format(date);
|
||||||
|
String expectedDate = "2018-06-25";
|
||||||
|
assertEquals(expectedDate, dateStr.substring(0, expectedDate.length()));
|
||||||
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
public void testDateFormatWithMilliseconds() {
|
||||||
|
long time = 1530209176870L;
|
||||||
|
Date date = new Date(time);
|
||||||
|
String dateStr = ISO8601Utils.format(date, true);
|
||||||
|
String expectedDate = "2018-06-28T18:06:16.870Z";
|
||||||
|
assertEquals(expectedDate, dateStr);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
public void testDateFormatWithTimezone() {
|
||||||
|
long time = 1530209176870L;
|
||||||
|
Date date = new Date(time);
|
||||||
|
String dateStr = ISO8601Utils.format(date, true, TimeZone.getTimeZone("Brazil/East"));
|
||||||
|
String expectedDate = "2018-06-28T15:06:16.870-03:00";
|
||||||
|
assertEquals(expectedDate, dateStr);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
public void testDateParseWithDefaultTimezone() throws ParseException {
|
||||||
|
String dateStr = "2018-06-25";
|
||||||
|
Date date = ISO8601Utils.parse(dateStr, new ParsePosition(0));
|
||||||
|
Date expectedDate = new GregorianCalendar(2018, Calendar.JUNE, 25).getTime();
|
||||||
|
assertEquals(expectedDate, date);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
public void testDateParseWithTimezone() throws ParseException {
|
||||||
|
TimeZone defaultTimeZone = TimeZone.getDefault();
|
||||||
|
TimeZone.setDefault(TimeZone.getTimeZone("UTC"));
|
||||||
|
Locale defaultLocale = Locale.getDefault();
|
||||||
|
Locale.setDefault(Locale.US);
|
||||||
|
try {
|
||||||
|
String dateStr = "2018-06-25T00:00:00-03:00";
|
||||||
|
Date date = ISO8601Utils.parse(dateStr, new ParsePosition(0));
|
||||||
|
Date expectedDate = new GregorianCalendar(2018, Calendar.JUNE, 25, 3, 0).getTime();
|
||||||
|
assertEquals(expectedDate, date);
|
||||||
|
} finally {
|
||||||
|
TimeZone.setDefault(defaultTimeZone);
|
||||||
|
Locale.setDefault(defaultLocale);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
public void testDateParseSpecialTimezone() throws ParseException {
|
||||||
|
TimeZone defaultTimeZone = TimeZone.getDefault();
|
||||||
|
TimeZone.setDefault(TimeZone.getTimeZone("UTC"));
|
||||||
|
Locale defaultLocale = Locale.getDefault();
|
||||||
|
Locale.setDefault(Locale.US);
|
||||||
|
try {
|
||||||
|
String dateStr = "2018-06-25T00:02:00-02:58";
|
||||||
|
Date date = ISO8601Utils.parse(dateStr, new ParsePosition(0));
|
||||||
|
Date expectedDate = new GregorianCalendar(2018, Calendar.JUNE, 25, 3, 0).getTime();
|
||||||
|
assertEquals(expectedDate, date);
|
||||||
|
} finally {
|
||||||
|
TimeZone.setDefault(defaultTimeZone);
|
||||||
|
Locale.setDefault(defaultLocale);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
public void testDateParseInvalidTime() throws ParseException {
|
||||||
|
TimeZone defaultTimeZone = TimeZone.getDefault();
|
||||||
|
TimeZone.setDefault(TimeZone.getTimeZone("UTC"));
|
||||||
|
Locale defaultLocale = Locale.getDefault();
|
||||||
|
Locale.setDefault(Locale.US);
|
||||||
|
try {
|
||||||
|
String dateStr = "2018-06-25T61:60:62-03:00";
|
||||||
|
exception.expect(ParseException.class);
|
||||||
|
ISO8601Utils.parse(dateStr, new ParsePosition(0));
|
||||||
|
} finally {
|
||||||
|
TimeZone.setDefault(defaultTimeZone);
|
||||||
|
Locale.setDefault(defaultLocale);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
Loading…
Reference in New Issue
Block a user