@@ -454,7 +454,7 @@ void bigNumbers() throws Exception
454
454
BigInteger biggie = new BigInteger (NUMBER_STR );
455
455
456
456
for (int mode : ALL_MODES ) {
457
- try (JsonParser p = createParser (jsonFactory (), mode , NUMBER_STR +" " )) {
457
+ try (JsonParser p = createParser (jsonFactory (), mode , NUMBER_STR + " " )) {
458
458
assertToken (JsonToken .VALUE_NUMBER_INT , p .nextToken ());
459
459
assertEquals (JsonParser .NumberType .BIG_INTEGER , p .getNumberType ());
460
460
assertEquals (NUMBER_STR , p .getText ());
@@ -463,6 +463,26 @@ void bigNumbers() throws Exception
463
463
}
464
464
}
465
465
466
+ @ Test
467
+ void intsWith19Chars () throws Exception
468
+ {
469
+ final String [] values = new String [] {
470
+ "9223372036854775808" , "9999999999999999999"
471
+ };
472
+ for (String value : values ) {
473
+ BigInteger biggie = new BigInteger (value );
474
+
475
+ for (int mode : ALL_MODES ) {
476
+ try (JsonParser p = createParser (jsonFactory (), mode , value + " " )) {
477
+ assertToken (JsonToken .VALUE_NUMBER_INT , p .nextToken ());
478
+ assertEquals (JsonParser .NumberType .BIG_INTEGER , p .getNumberType ());
479
+ assertEquals (biggie , p .getBigIntegerValue ());
480
+ assertEquals (value , p .getText ());
481
+ }
482
+ }
483
+ }
484
+ }
485
+
466
486
// Related to [core#1135]: JsonParser.isNaN() should not be fooled
467
487
// by possible Double overflow
468
488
@ Test
0 commit comments