open-source-parsers / jsoncpp

A C++ library for interacting with JSON.
Other
8.17k stars 2.65k forks source link

TESTING: legacy_test_real13.json parsing failed. #1446

Open olivier-fs opened 2 years ago

olivier-fs commented 2 years ago

Hi!

I'm using latest jsoncpp from master, on a Windows 10 dev box with Visual Studio 2019

Build has been configured with CMake :

cmake -B ~/build/cpp/www-git/jsoncpp -D CMAKE_CONFIGURATION_TYPES=Release \
-D CMAKE_INSTALL_PREFIX=~/build/cpp/www-git/jsoncpp/install -D BUILD_SHARED_LIBS=ON -D JSONCPP_WITH_TESTS=ON \
-D JSONCPP_WITH_POST_BUILD_UNITTEST=ON -D JSONCPP_WITH_EXAMPLE=ON

Everything builds fine, but one test (only one of all tests) in jsoncpp_readerwriter_tests fails :

Excerpts from the output log of "Build Solution" in VS 2019 :

18>C:\Users\olivier\build\cpp\www-git\jsoncpp\bin\Release\jsontestrunner_exe.exe  --json-writer StyledWriter "C:\Users\olivier\dev\cpp\www-git\jsoncpp\test\data\legacy_test_real_11.json"
18>C:\Users\olivier\build\cpp\www-git\jsoncpp\bin\Release\jsontestrunner_exe.exe  --json-writer StyledWriter "C:\Users\olivier\dev\cpp\www-git\jsoncpp\test\data\legacy_test_real_12.json"
18>C:\Users\olivier\build\cpp\www-git\jsoncpp\bin\Release\jsontestrunner_exe.exe  --json-writer StyledWriter "C:\Users\olivier\dev\cpp\www-git\jsoncpp\test\data\legacy_test_real_13.json"
18>Failed to parse input file:
18>* Line 1, Column 2
18>  '-1e+9999' is not a number.
18>
18>C:\Users\olivier\build\cpp\www-git\jsoncpp\bin\Release\jsontestrunner_exe.exe  --json-writer StyledWriter "C:\Users\olivier\dev\cpp\www-git\jsoncpp\test\data\legacy_test_string_01.json"
18>C:\Users\olivier\build\cpp\www-git\jsoncpp\bin\Release\jsontestrunner_exe.exe  --json-writer StyledWriter "C:\Users\olivier\dev\cpp\www-git\jsoncpp\test\data\legacy_test_string_02.json"
18>C:\Users\olivier\build\cpp\www-git\jsoncpp\bin\Release\jsontestrunner_exe.exe  --json-writer StyledWriter "C:\Users\olivier\dev\cpp\www-git\jsoncpp\test\data\legacy_test_string_03.json"
18>TESTING: C:\Users\olivier\dev\cpp\www-git\jsoncpp\test\data\fail_invalid_quote.json OK
18>TESTING: C:\Users\olivier\dev\cpp\www-git\jsoncpp\test\data\fail_test_array_01.json OK
18>TESTING: C:\Users\olivier\dev\cpp\www-git\jsoncpp\test\data\fail_test_array_02.json OK
18>TESTING: C:\Users\olivier\dev\cpp\www-git\jsoncpp\test\data\fail_test_object_01.json OK
18>TESTING: C:\Users\olivier\dev\cpp\www-git\jsoncpp\test\data\fail_test_stack_limit.json OK
18>TESTING: C:\Users\olivier\dev\cpp\www-git\jsoncpp\test\data\legacy_test_array_01.json OK
18>TESTING: C:\Users\olivier\dev\cpp\www-git\jsoncpp\test\data\legacy_test_array_02.json OK
18>TESTING: C:\Users\olivier\dev\cpp\www-git\jsoncpp\test\data\legacy_test_array_03.json OK
18>TESTING: C:\Users\olivier\dev\cpp\www-git\jsoncpp\test\data\legacy_test_array_04.json OK
18>TESTING: C:\Users\olivier\dev\cpp\www-git\jsoncpp\test\data\legacy_test_array_05.json OK
18>TESTING: C:\Users\olivier\dev\cpp\www-git\jsoncpp\test\data\legacy_test_array_06.json OK
18>TESTING: C:\Users\olivier\dev\cpp\www-git\jsoncpp\test\data\legacy_test_array_07.json OK
18>TESTING: C:\Users\olivier\dev\cpp\www-git\jsoncpp\test\data\legacy_test_basic_01.json OK
18>TESTING: C:\Users\olivier\dev\cpp\www-git\jsoncpp\test\data\legacy_test_basic_02.json OK
18>TESTING: C:\Users\olivier\dev\cpp\www-git\jsoncpp\test\data\legacy_test_basic_03.json OK
18>TESTING: C:\Users\olivier\dev\cpp\www-git\jsoncpp\test\data\legacy_test_basic_04.json OK
18>TESTING: C:\Users\olivier\dev\cpp\www-git\jsoncpp\test\data\legacy_test_basic_05.json OK
18>TESTING: C:\Users\olivier\dev\cpp\www-git\jsoncpp\test\data\legacy_test_basic_06.json OK
18>TESTING: C:\Users\olivier\dev\cpp\www-git\jsoncpp\test\data\legacy_test_basic_07.json OK
18>TESTING: C:\Users\olivier\dev\cpp\www-git\jsoncpp\test\data\legacy_test_basic_08.json OK
18>TESTING: C:\Users\olivier\dev\cpp\www-git\jsoncpp\test\data\legacy_test_basic_09.json OK
18>TESTING: C:\Users\olivier\dev\cpp\www-git\jsoncpp\test\data\legacy_test_comment_00.json OK
18>TESTING: C:\Users\olivier\dev\cpp\www-git\jsoncpp\test\data\legacy_test_comment_01.json OK
18>TESTING: C:\Users\olivier\dev\cpp\www-git\jsoncpp\test\data\legacy_test_comment_02.json OK
18>TESTING: C:\Users\olivier\dev\cpp\www-git\jsoncpp\test\data\legacy_test_complex_01.json OK
18>TESTING: C:\Users\olivier\dev\cpp\www-git\jsoncpp\test\data\legacy_test_integer_01.json OK
18>TESTING: C:\Users\olivier\dev\cpp\www-git\jsoncpp\test\data\legacy_test_integer_02.json OK
18>TESTING: C:\Users\olivier\dev\cpp\www-git\jsoncpp\test\data\legacy_test_integer_03.json OK
18>TESTING: C:\Users\olivier\dev\cpp\www-git\jsoncpp\test\data\legacy_test_integer_04.json OK
18>TESTING: C:\Users\olivier\dev\cpp\www-git\jsoncpp\test\data\legacy_test_integer_05.json OK
18>TESTING: C:\Users\olivier\dev\cpp\www-git\jsoncpp\test\data\legacy_test_integer_06_64bits.json OK
18>TESTING: C:\Users\olivier\dev\cpp\www-git\jsoncpp\test\data\legacy_test_integer_07_64bits.json OK
18>TESTING: C:\Users\olivier\dev\cpp\www-git\jsoncpp\test\data\legacy_test_integer_08_64bits.json OK
18>TESTING: C:\Users\olivier\dev\cpp\www-git\jsoncpp\test\data\legacy_test_large_01.json OK
18>TESTING: C:\Users\olivier\dev\cpp\www-git\jsoncpp\test\data\legacy_test_object_01.json OK
18>TESTING: C:\Users\olivier\dev\cpp\www-git\jsoncpp\test\data\legacy_test_object_02.json OK
18>TESTING: C:\Users\olivier\dev\cpp\www-git\jsoncpp\test\data\legacy_test_object_03.json OK
18>TESTING: C:\Users\olivier\dev\cpp\www-git\jsoncpp\test\data\legacy_test_object_04.json OK
18>TESTING: C:\Users\olivier\dev\cpp\www-git\jsoncpp\test\data\legacy_test_preserve_comment_01.json OK
18>TESTING: C:\Users\olivier\dev\cpp\www-git\jsoncpp\test\data\legacy_test_real_01.json OK
18>TESTING: C:\Users\olivier\dev\cpp\www-git\jsoncpp\test\data\legacy_test_real_02.json OK
18>TESTING: C:\Users\olivier\dev\cpp\www-git\jsoncpp\test\data\legacy_test_real_03.json OK
18>TESTING: C:\Users\olivier\dev\cpp\www-git\jsoncpp\test\data\legacy_test_real_04.json OK
18>TESTING: C:\Users\olivier\dev\cpp\www-git\jsoncpp\test\data\legacy_test_real_05.json OK
18>TESTING: C:\Users\olivier\dev\cpp\www-git\jsoncpp\test\data\legacy_test_real_06.json OK
18>TESTING: C:\Users\olivier\dev\cpp\www-git\jsoncpp\test\data\legacy_test_real_07.json OK
18>TESTING: C:\Users\olivier\dev\cpp\www-git\jsoncpp\test\data\legacy_test_real_08.json OK
18>TESTING: C:\Users\olivier\dev\cpp\www-git\jsoncpp\test\data\legacy_test_real_09.json OK
18>TESTING: C:\Users\olivier\dev\cpp\www-git\jsoncpp\test\data\legacy_test_real_10.json OK
18>TESTING: C:\Users\olivier\dev\cpp\www-git\jsoncpp\test\data\legacy_test_real_11.json OK
18>TESTING: C:\Users\olivier\dev\cpp\www-git\jsoncpp\test\data\legacy_test_real_12.json OK
18>TESTING: C:\Users\olivier\dev\cpp\www-git\jsoncpp\test\data\legacy_test_real_13.json parsing failed
18>TESTING: C:\Users\olivier\dev\cpp\www-git\jsoncpp\test\data\legacy_test_string_01.json OK
18>TESTING: C:\Users\olivier\dev\cpp\www-git\jsoncpp\test\data\legacy_test_string_02.json OK
18>TESTING: C:\Users\olivier\dev\cpp\www-git\jsoncpp\test\data\legacy_test_string_03.json OK
18>TESTING: C:\Users\olivier\dev\cpp\www-git\jsoncpp\test\data\legacy_test_string_04.json OK
18>TESTING: C:\Users\olivier\dev\cpp\www-git\jsoncpp\test\data\legacy_test_string_05.json OK
18>TESTING: C:\Users\olivier\dev\cpp\www-git\jsoncpp\test\data\legacy_test_string_unicode_01.json OK
18>TESTING: C:\Users\olivier\dev\cpp\www-git\jsoncpp\test\data\legacy_test_string_unicode_02.json OK
18>TESTING: C:\Users\olivier\dev\cpp\www-git\jsoncpp\test\data\legacy_test_string_unicode_03.json OK
18>TESTING: C:\Users\olivier\dev\cpp\www-git\jsoncpp\test\data\legacy_test_string_unicode_04.json OK
18>TESTING: C:\Users\olivier\dev\cpp\www-git\jsoncpp\test\data\legacy_test_string_unicode_05.json OK
18>TESTING: C:\Users\olivier\dev\cpp\www-git\jsoncpp\test\data\test_array_08.json OK
18>TESTING: C:\Users\olivier\dev\cpp\www-git\jsoncpp\test\data\test_object_05.json OK
18>
18>Failure details:
18>* Test C:\Users\olivier\dev\cpp\www-git\jsoncpp\test\data\legacy_test_real_13.json
18>Parsing failed:
18>
18>
18>Test results: 63 passed, 1 failed.

Not sure what's going on here...

Shouldn't '-1e+9999' be a 'number' as expected by the test ?

BillyDonahue commented 1 year ago

It's a json number, certainly! Json has simple rules and this string follows those rules.

It is out of range, though, and that seems like it should be a different kind of error.

Is this test failure particular to your platform? Like, I wonder exactly why this test doesn't fail all the time?

On Thu, Nov 17, 2022 at 9:19 AM olivier-fs @.***> wrote:

Hi!

I'm using latest jsoncpp from master, on a Windows 10 dev box with Visual Studio 2019

Build has been configured with CMake :

cmake -B ~/build/cpp/www-git/jsoncpp -D CMAKE_CONFIGURATION_TYPES=Release \ -D CMAKE_INSTALL_PREFIX=~/build/cpp/www-git/jsoncpp/install -D BUILD_SHARED_LIBS=ON -D JSONCPP_WITH_TESTS=ON \ -D JSONCPP_WITH_POST_BUILD_UNITTEST=ON -D JSONCPP_WITH_EXAMPLE=ON

Everything builds fine, but one test (only one of all tests) in jsoncpp_readerwriter_tests fails :

Excerpts from the output log of "Build Solution" in VS 2019 :

18>C:\Users\olivier\build\cpp\www-git\jsoncpp\bin\Release\jsontestrunner_exe.exe --json-writer StyledWriter "C:\Users\olivier\dev\cpp\www-git\jsoncpp\test\data\legacy_test_real_11.json" 18>C:\Users\olivier\build\cpp\www-git\jsoncpp\bin\Release\jsontestrunner_exe.exe --json-writer StyledWriter "C:\Users\olivier\dev\cpp\www-git\jsoncpp\test\data\legacy_test_real_12.json" 18>C:\Users\olivier\build\cpp\www-git\jsoncpp\bin\Release\jsontestrunner_exe.exe --json-writer StyledWriter "C:\Users\olivier\dev\cpp\www-git\jsoncpp\test\data\legacy_test_real_13.json" 18>Failed to parse input file: 18>* Line 1, Column 2 18> '-1e+9999' is not a number. 18> 18>C:\Users\olivier\build\cpp\www-git\jsoncpp\bin\Release\jsontestrunner_exe.exe --json-writer StyledWriter "C:\Users\olivier\dev\cpp\www-git\jsoncpp\test\data\legacy_test_string_01.json" 18>C:\Users\olivier\build\cpp\www-git\jsoncpp\bin\Release\jsontestrunner_exe.exe --json-writer StyledWriter "C:\Users\olivier\dev\cpp\www-git\jsoncpp\test\data\legacy_test_string_02.json" 18>C:\Users\olivier\build\cpp\www-git\jsoncpp\bin\Release\jsontestrunner_exe.exe --json-writer StyledWriter "C:\Users\olivier\dev\cpp\www-git\jsoncpp\test\data\legacy_test_string_03.json"

18>TESTING: C:\Users\olivier\dev\cpp\www-git\jsoncpp\test\data\fail_invalid_quote.json OK 18>TESTING: C:\Users\olivier\dev\cpp\www-git\jsoncpp\test\data\fail_test_array_01.json OK 18>TESTING: C:\Users\olivier\dev\cpp\www-git\jsoncpp\test\data\fail_test_array_02.json OK 18>TESTING: C:\Users\olivier\dev\cpp\www-git\jsoncpp\test\data\fail_test_object_01.json OK 18>TESTING: C:\Users\olivier\dev\cpp\www-git\jsoncpp\test\data\fail_test_stack_limit.json OK 18>TESTING: C:\Users\olivier\dev\cpp\www-git\jsoncpp\test\data\legacy_test_array_01.json OK 18>TESTING: C:\Users\olivier\dev\cpp\www-git\jsoncpp\test\data\legacy_test_array_02.json OK 18>TESTING: C:\Users\olivier\dev\cpp\www-git\jsoncpp\test\data\legacy_test_array_03.json OK 18>TESTING: C:\Users\olivier\dev\cpp\www-git\jsoncpp\test\data\legacy_test_array_04.json OK 18>TESTING: C:\Users\olivier\dev\cpp\www-git\jsoncpp\test\data\legacy_test_array_05.json OK 18>TESTING: C:\Users\olivier\dev\cpp\www-git\jsoncpp\test\data\legacy_test_array_06.json OK 18>TESTING: C:\Users\olivier\dev\cpp\www-git\jsoncpp\test\data\legacy_test_array_07.json OK 18>TESTING: C:\Users\olivier\dev\cpp\www-git\jsoncpp\test\data\legacy_test_basic_01.json OK 18>TESTING: C:\Users\olivier\dev\cpp\www-git\jsoncpp\test\data\legacy_test_basic_02.json OK 18>TESTING: C:\Users\olivier\dev\cpp\www-git\jsoncpp\test\data\legacy_test_basic_03.json OK 18>TESTING: C:\Users\olivier\dev\cpp\www-git\jsoncpp\test\data\legacy_test_basic_04.json OK 18>TESTING: C:\Users\olivier\dev\cpp\www-git\jsoncpp\test\data\legacy_test_basic_05.json OK 18>TESTING: C:\Users\olivier\dev\cpp\www-git\jsoncpp\test\data\legacy_test_basic_06.json OK 18>TESTING: C:\Users\olivier\dev\cpp\www-git\jsoncpp\test\data\legacy_test_basic_07.json OK 18>TESTING: C:\Users\olivier\dev\cpp\www-git\jsoncpp\test\data\legacy_test_basic_08.json OK 18>TESTING: C:\Users\olivier\dev\cpp\www-git\jsoncpp\test\data\legacy_test_basic_09.json OK 18>TESTING: C:\Users\olivier\dev\cpp\www-git\jsoncpp\test\data\legacy_test_comment_00.json OK 18>TESTING: C:\Users\olivier\dev\cpp\www-git\jsoncpp\test\data\legacy_test_comment_01.json OK 18>TESTING: C:\Users\olivier\dev\cpp\www-git\jsoncpp\test\data\legacy_test_comment_02.json OK 18>TESTING: C:\Users\olivier\dev\cpp\www-git\jsoncpp\test\data\legacy_test_complex_01.json OK 18>TESTING: C:\Users\olivier\dev\cpp\www-git\jsoncpp\test\data\legacy_test_integer_01.json OK 18>TESTING: C:\Users\olivier\dev\cpp\www-git\jsoncpp\test\data\legacy_test_integer_02.json OK 18>TESTING: C:\Users\olivier\dev\cpp\www-git\jsoncpp\test\data\legacy_test_integer_03.json OK 18>TESTING: C:\Users\olivier\dev\cpp\www-git\jsoncpp\test\data\legacy_test_integer_04.json OK 18>TESTING: C:\Users\olivier\dev\cpp\www-git\jsoncpp\test\data\legacy_test_integer_05.json OK 18>TESTING: C:\Users\olivier\dev\cpp\www-git\jsoncpp\test\data\legacy_test_integer_06_64bits.json OK 18>TESTING: C:\Users\olivier\dev\cpp\www-git\jsoncpp\test\data\legacy_test_integer_07_64bits.json OK 18>TESTING: C:\Users\olivier\dev\cpp\www-git\jsoncpp\test\data\legacy_test_integer_08_64bits.json OK 18>TESTING: C:\Users\olivier\dev\cpp\www-git\jsoncpp\test\data\legacy_test_large_01.json OK 18>TESTING: C:\Users\olivier\dev\cpp\www-git\jsoncpp\test\data\legacy_test_object_01.json OK 18>TESTING: C:\Users\olivier\dev\cpp\www-git\jsoncpp\test\data\legacy_test_object_02.json OK 18>TESTING: C:\Users\olivier\dev\cpp\www-git\jsoncpp\test\data\legacy_test_object_03.json OK 18>TESTING: C:\Users\olivier\dev\cpp\www-git\jsoncpp\test\data\legacy_test_object_04.json OK 18>TESTING: C:\Users\olivier\dev\cpp\www-git\jsoncpp\test\data\legacy_test_preserve_comment_01.json OK 18>TESTING: C:\Users\olivier\dev\cpp\www-git\jsoncpp\test\data\legacy_test_real_01.json OK 18>TESTING: C:\Users\olivier\dev\cpp\www-git\jsoncpp\test\data\legacy_test_real_02.json OK 18>TESTING: C:\Users\olivier\dev\cpp\www-git\jsoncpp\test\data\legacy_test_real_03.json OK 18>TESTING: C:\Users\olivier\dev\cpp\www-git\jsoncpp\test\data\legacy_test_real_04.json OK 18>TESTING: C:\Users\olivier\dev\cpp\www-git\jsoncpp\test\data\legacy_test_real_05.json OK 18>TESTING: C:\Users\olivier\dev\cpp\www-git\jsoncpp\test\data\legacy_test_real_06.json OK 18>TESTING: C:\Users\olivier\dev\cpp\www-git\jsoncpp\test\data\legacy_test_real_07.json OK 18>TESTING: C:\Users\olivier\dev\cpp\www-git\jsoncpp\test\data\legacy_test_real_08.json OK 18>TESTING: C:\Users\olivier\dev\cpp\www-git\jsoncpp\test\data\legacy_test_real_09.json OK 18>TESTING: C:\Users\olivier\dev\cpp\www-git\jsoncpp\test\data\legacy_test_real_10.json OK 18>TESTING: C:\Users\olivier\dev\cpp\www-git\jsoncpp\test\data\legacy_test_real_11.json OK 18>TESTING: C:\Users\olivier\dev\cpp\www-git\jsoncpp\test\data\legacy_test_real_12.json OK 18>TESTING: C:\Users\olivier\dev\cpp\www-git\jsoncpp\test\data\legacy_test_real_13.json parsing failed 18>TESTING: C:\Users\olivier\dev\cpp\www-git\jsoncpp\test\data\legacy_test_string_01.json OK 18>TESTING: C:\Users\olivier\dev\cpp\www-git\jsoncpp\test\data\legacy_test_string_02.json OK 18>TESTING: C:\Users\olivier\dev\cpp\www-git\jsoncpp\test\data\legacy_test_string_03.json OK 18>TESTING: C:\Users\olivier\dev\cpp\www-git\jsoncpp\test\data\legacy_test_string_04.json OK 18>TESTING: C:\Users\olivier\dev\cpp\www-git\jsoncpp\test\data\legacy_test_string_05.json OK 18>TESTING: C:\Users\olivier\dev\cpp\www-git\jsoncpp\test\data\legacy_test_string_unicode_01.json OK 18>TESTING: C:\Users\olivier\dev\cpp\www-git\jsoncpp\test\data\legacy_test_string_unicode_02.json OK 18>TESTING: C:\Users\olivier\dev\cpp\www-git\jsoncpp\test\data\legacy_test_string_unicode_03.json OK 18>TESTING: C:\Users\olivier\dev\cpp\www-git\jsoncpp\test\data\legacy_test_string_unicode_04.json OK 18>TESTING: C:\Users\olivier\dev\cpp\www-git\jsoncpp\test\data\legacy_test_string_unicode_05.json OK 18>TESTING: C:\Users\olivier\dev\cpp\www-git\jsoncpp\test\data\test_array_08.json OK 18>TESTING: C:\Users\olivier\dev\cpp\www-git\jsoncpp\test\data\test_object_05.json OK 18> 18>Failure details: 18>* Test C:\Users\olivier\dev\cpp\www-git\jsoncpp\test\data\legacy_test_real_13.json 18>Parsing failed: 18> 18> 18>Test results: 63 passed, 1 failed.

Not sure what's going on here...

Shouldn't '-1e+9999' be a 'number' as expected by the test ?

— Reply to this email directly, view it on GitHub https://github.com/open-source-parsers/jsoncpp/issues/1446, or unsubscribe https://github.com/notifications/unsubscribe-auth/ACBWORCMXGW73BW26GOX73DWIY5FJANCNFSM6AAAAAASDNWEEM . You are receiving this because you are subscribed to this thread.Message ID: @.***>

-- ǝnɥɐuop ʎllıq

olivier-fs commented 1 year ago

Hi!

Not sure about what you mean by "doesn't fail all the time?".

When building jsoncpp_readerwriter_tests in VS 2019 (BTW part of the whole 'Rebuild solution') :

And I can add : all jsoncpp_test.exe tests succeed :

$ cd ~/build/cpp/www-git/jsoncpp/bin/Release && ./jsoncpp_test.exe
Testing ValueTest/checkNormalizeFloatingPointStr: OK
Testing ValueTest/memberCount: OK
Testing ValueTest/objects: OK
Testing ValueTest/arrays: OK
Testing ValueTest/resizeArray: OK
Testing ValueTest/resizePopulatesAllMissingElements: OK
Testing ValueTest/getArrayValue: OK
Testing ValueTest/arrayIssue252: OK
Testing ValueTest/arrayInsertAtRandomIndex: OK
Testing ValueTest/null: OK
Testing ValueTest/strings: OK
Testing ValueTest/bools: OK
Testing ValueTest/integers: OK
Testing ValueTest/nonIntegers: OK
Testing ValueTest/compareNull: OK
Testing ValueTest/compareInt: OK
Testing ValueTest/compareUInt: OK
Testing ValueTest/compareDouble: OK
Testing ValueTest/compareString: OK
Testing ValueTest/compareBoolean: OK
Testing ValueTest/compareArray: OK
Testing ValueTest/compareObject: OK
Testing ValueTest/compareType: OK
Testing ValueTest/CopyObject: OK
Testing ValueTest/typeChecksThrowExceptions: OK
Testing ValueTest/offsetAccessors: OK
Testing ValueTest/StaticString: OK
Testing ValueTest/WideString: OK
Testing ValueTest/CommentBefore: OK
Testing ValueTest/zeroes: OK
Testing ValueTest/zeroesInKeys: OK
Testing ValueTest/specialFloats: OK
Testing ValueTest/precision: OK
Testing ValueTest/searchValueByPath: OK
Testing FastWriterTest/dropNullPlaceholders: OK
Testing FastWriterTest/enableYAMLCompatibility: OK
Testing FastWriterTest/omitEndingLineFeed: OK
Testing FastWriterTest/writeNumericValue: OK
Testing FastWriterTest/writeArrays: OK
Testing FastWriterTest/writeNestedObjects: OK
Testing StyledWriterTest/writeNumericValue: OK
Testing StyledWriterTest/writeArrays: OK
Testing StyledWriterTest/writeNestedObjects: OK
Testing StyledWriterTest/multiLineArray: OK
Testing StyledWriterTest/writeValueWithComment: OK
Testing StyledStreamWriterTest/writeNumericValue: OK
Testing StyledStreamWriterTest/writeArrays: OK
Testing StyledStreamWriterTest/writeNestedObjects: OK
Testing StyledStreamWriterTest/multiLineArray: OK
Testing StyledStreamWriterTest/writeValueWithComment: OK
Testing StreamWriterTest/writeNumericValue: OK
Testing StreamWriterTest/writeArrays: OK
Testing StreamWriterTest/writeNestedObjects: OK
Testing StreamWriterTest/multiLineArray: OK
Testing StreamWriterTest/dropNullPlaceholders: OK
Testing StreamWriterTest/enableYAMLCompatibility: OK
Testing StreamWriterTest/indentation: OK
Testing StreamWriterTest/writeZeroes: OK
Testing StreamWriterTest/unicode: OK
Testing StreamWriterTest/escapeControlCharacters: OK
Testing StreamWriterTest/escapeTabCharacterWindows: OK
Testing ReaderTest/parseWithNoErrors: OK
Testing ReaderTest/parseObject: OK
Testing ReaderTest/parseArray: OK
Testing ReaderTest/parseString: OK
Testing ReaderTest/parseComment: OK
Testing ReaderTest/streamParseWithNoErrors: OK
Testing ReaderTest/parseWithNoErrorsTestingOffsets: OK
Testing ReaderTest/parseWithOneError: OK
Testing ReaderTest/parseSpecialFloat: OK
Testing ReaderTest/strictModeParseNumber: OK
Testing ReaderTest/parseChineseWithOneError: OK
Testing ReaderTest/parseWithDetailError: OK
Testing ReaderTest/pushErrorTest: OK
Testing ReaderTest/allowNumericKeysTest: OK
Testing CharReaderTest/parseWithNoErrors: OK
Testing CharReaderTest/parseWithNoErrorsTestingOffsets: OK
Testing CharReaderTest/parseNumber: OK
Testing CharReaderTest/parseString: OK
Testing CharReaderTest/parseComment: OK
Testing CharReaderTest/parseObjectWithErrors: OK
Testing CharReaderTest/parseArrayWithErrors: OK
Testing CharReaderTest/parseWithOneError: OK
Testing CharReaderTest/parseChineseWithOneError: OK
Testing CharReaderTest/parseWithDetailError: OK
Testing CharReaderTest/parseWithStackLimit: OK
Testing CharReaderTest/testOperator: OK
Testing CharReaderStrictModeTest/dupKeys: OK
Testing CharReaderFailIfExtraTest/issue164: OK
Testing CharReaderFailIfExtraTest/issue107: OK
Testing CharReaderFailIfExtraTest/commentAfterObject: OK
Testing CharReaderFailIfExtraTest/commentAfterArray: OK
Testing CharReaderFailIfExtraTest/commentAfterBool: OK
Testing CharReaderFailIfExtraTest/parseComment: OK
Testing CharReaderAllowDropNullTest/issue178: OK
Testing CharReaderAllowNumericKeysTest/allowNumericKeys: OK
Testing CharReaderAllowSingleQuotesTest/issue182: OK
Testing CharReaderAllowZeroesTest/issue176: OK
Testing CharReaderAllowSpecialFloatsTest/specialFloat: OK
Testing CharReaderAllowSpecialFloatsTest/issue209: OK
Testing EscapeSequenceTest/readerParseEscapeSequence: OK
Testing EscapeSequenceTest/charReaderParseEscapeSequence: OK
Testing EscapeSequenceTest/writeEscapeSequence: OK
Testing BuilderTest/settings: OK
Testing BomTest/skipBom: OK
Testing BomTest/notSkipBom: OK
Testing IteratorTest/convert: OK
Testing IteratorTest/decrement: OK
Testing IteratorTest/reverseIterator: OK
Testing IteratorTest/distance: OK
Testing IteratorTest/nullValues: OK
Testing IteratorTest/staticStringKey: OK
Testing IteratorTest/names: OK
Testing IteratorTest/indexes: OK
Testing IteratorTest/constness: OK
Testing RValueTest/moveConstruction: OK
Testing FuzzTest/fuzzDoesntCrash: OK
Testing MemberTemplateAs/BehavesSameAsNamedAs: OK
Testing MemberTemplateIs/BehavesSameAsNamedIs: OK
Testing VersionTest/VersionNumbersMatch: OK
All 120 tests passed

So only that specific 'legacy_test_real_13.json' test fails.

My question "Shouldn't '-1e+9999' be a 'number' as expected by the test ?" was based on the output of the test : " '-1e+9999' is not a number." and the "failed" test result.

I'm not sure what is actually expected here... The scientific notation looks ok but the exponent is huge.

My intent is to warn : That specific test fails, and it is the only one, so whatever the reason it looks unexpected to the author of the tests.

My build configuration : x64 / Release, with VS Enterprise 2019 latest version 16.11.21, CMake 3.25.1.

P.S. jsoncpp is otherwise perfectly functional for my use cases 8-)