static void testRawInteger() { JSONParse parser = new JSONParse("42"); System.assertEquals(false, parser.isObject()); System.assertEquals(false, parser.isArray()); System.assertEquals(42, parser.getIntegerValue()); }
static void testGetIntegerValue() { JSONParse parser = new JSONParse("12"); System.assertEquals(12, parser.getIntegerValue()); parser = new JSONParse("\"12\""); System.assertEquals(12, parser.getIntegerValue()); parser = new JSONParse("12.5"); System.assertEquals(12, parser.getIntegerValue()); parser = new JSONParse("1538783039073"); System.assertEquals(1184747105, parser.getIntegerValue()); // integer gets truncated try { parser = new JSONParse("[1,2,3]"); parser.getIntegerValue(); System.assert(false, "Node is not a valid Integer, should have seen an exception about that."); } catch (JSONParse.InvalidConversionException e) { System.assertEquals("This value cannot be converted to an Integer: [ 1, 2, 3 ]", e.getMessage()); } }