diff --git a/unit_tests/util/json_render.cpp b/unit_tests/util/json_render.cpp index dcf0076e9..749416cad 100644 --- a/unit_tests/util/json_render.cpp +++ b/unit_tests/util/json_render.cpp @@ -32,6 +32,62 @@ BOOST_AUTO_TEST_CASE(test_json_issue_6531) { osrm::util::json::Renderer renderer(output); renderer(0.0000000000017114087924596788); BOOST_CHECK_EQUAL(output, "1.711408792e-12"); + + output.clear(); + renderer(42.0); + BOOST_CHECK_EQUAL(output, "42"); + + output.clear(); + renderer(42.1); + BOOST_CHECK_EQUAL(output, "42.1"); + + output.clear(); + renderer(42.12); + BOOST_CHECK_EQUAL(output, "42.12"); + + output.clear(); + renderer(42.123); + BOOST_CHECK_EQUAL(output, "42.123"); + + output.clear(); + renderer(42.1234); + BOOST_CHECK_EQUAL(output, "42.1234"); + + output.clear(); + renderer(42.12345); + BOOST_CHECK_EQUAL(output, "42.12345"); + + output.clear(); + renderer(42.123456); + BOOST_CHECK_EQUAL(output, "42.123456"); + + output.clear(); + renderer(42.1234567); + BOOST_CHECK_EQUAL(output, "42.1234567"); + + output.clear(); + renderer(42.12345678); + BOOST_CHECK_EQUAL(output, "42.12345678"); + + output.clear(); + renderer(42.123456789); + BOOST_CHECK_EQUAL(output, "42.12345679"); + + output.clear(); + renderer(0.12345678912345); + BOOST_CHECK_EQUAL(output, "0.1234567891"); + + output.clear(); + renderer(0.123456789); + BOOST_CHECK_EQUAL(output, "0.123456789"); + + output.clear(); + renderer(0.12345678916); + BOOST_CHECK_EQUAL(output, "0.1234567892"); + + output.clear(); + renderer(123456789123456789); + BOOST_CHECK_EQUAL(output, "1.234567891e+17"); } BOOST_AUTO_TEST_SUITE_END()