I was looking at the failing tests directory and was trying to debug the failing tests in ParseErrorHandling105Test.java file, I realised there was a similar test commented out in ParserErrorHandlingTest.java under package com.fasterxml.jackson.core.read in line 29 i.e. _testMangledNumbersInt(MODE_DATA_INPUT);
I saw a comment wondering how _testMangledNumbersFloat(MODE_DATA_INPUT); was working.
With my investigation I found out that during _testMangledNumbersIn() execution, _verifyRootSpace() in line 1088 of UTF8DataInputJsonParser.java gets called with _nextByte = -1 and hence satisfies the condition in line 1278 i.e. if (ch <= INT_SPACE) hence doesn't throw a missing WS error. Where as for _testMangledNumbersFloat we set the value as _nextByte = c; in line 1257 and hence it would throw the exception.
I hope this explains the root cause of the issue, happy to receive any feedback or suggestions. Apologies for my verbose explanation.
I was looking at the failing tests directory and was trying to debug the failing tests in
ParseErrorHandling105Test.javafile, I realised there was a similar test commented out inParserErrorHandlingTest.javaunder packagecom.fasterxml.jackson.core.readin line 29 i.e._testMangledNumbersInt(MODE_DATA_INPUT);I saw a comment wondering how
_testMangledNumbersFloat(MODE_DATA_INPUT);was working.With my investigation I found out that during
_testMangledNumbersIn()execution,_verifyRootSpace()inline 1088ofUTF8DataInputJsonParser.javagets called with_nextByte = -1and hence satisfies the condition inline 1278i.e.if (ch <= INT_SPACE)hence doesn't throw a missing WS error. Where as for_testMangledNumbersFloatwe set the value as_nextByte = c;inline 1257and hence it would throw the exception.I hope this explains the root cause of the issue, happy to receive any feedback or suggestions. Apologies for my verbose explanation.