From 2cf9d0a0c1e381a33978e32fedbca6313fed64ac Mon Sep 17 00:00:00 2001 From: conor-ward Date: Wed, 24 Jun 2020 15:58:49 +0100 Subject: [PATCH] Add test for parsing long with underscores for yaml --- .../yaml/deser/StreamingParseTest.java | 25 +++++++++++++++++++ 1 file changed, 25 insertions(+) diff --git a/yaml/src/test/java/com/fasterxml/jackson/dataformat/yaml/deser/StreamingParseTest.java b/yaml/src/test/java/com/fasterxml/jackson/dataformat/yaml/deser/StreamingParseTest.java index 8fa71a8d..bff2ce9c 100644 --- a/yaml/src/test/java/com/fasterxml/jackson/dataformat/yaml/deser/StreamingParseTest.java +++ b/yaml/src/test/java/com/fasterxml/jackson/dataformat/yaml/deser/StreamingParseTest.java @@ -2,6 +2,7 @@ import com.fasterxml.jackson.core.JsonParser; import com.fasterxml.jackson.core.JsonToken; +import com.fasterxml.jackson.databind.ObjectMapper; import com.fasterxml.jackson.dataformat.yaml.ModuleTestBase; import com.fasterxml.jackson.dataformat.yaml.YAMLFactory; import com.fasterxml.jackson.dataformat.yaml.YAMLParser; @@ -299,6 +300,15 @@ public void testIntParsingUnderscoresSm() throws Exception p.close(); } + public void testYamlLongWithUnderscores() throws Exception + { + ObjectMapper mapper = new ObjectMapper(new YAMLFactory()); + LongHolder longHolder = mapper.readValue("v: 1_000_000", LongHolder.class); + assertNotNull(longHolder); + assertEquals(LongHolder.class, longHolder.getClass()); + assertEquals(Long.valueOf(1000000), longHolder.getV()); + } + // [cbor#4]: accidental recognition as double, with multiple dots public void testDoubleParsing() throws Exception { @@ -571,4 +581,19 @@ public void testTimeLikeValues() throws Exception assertNull(p.nextToken()); p.close(); } + + static class LongHolder + { + private Long v; + + public Long getV() + { + return v; + } + + public void setV(Long v) + { + this.v = v; + } + } }