mirror of
https://github.com/ToruNiina/toml11.git
synced 2025-09-18 02:08:09 +08:00
test: add test for leading zeroes in fp exp
This commit is contained in:
@@ -51,6 +51,8 @@ BOOST_AUTO_TEST_CASE(test_exponential_valid)
|
|||||||
TOML11_TEST_LEX_ACCEPT(lex_float, "123E-10", "123E-10");
|
TOML11_TEST_LEX_ACCEPT(lex_float, "123E-10", "123E-10");
|
||||||
TOML11_TEST_LEX_ACCEPT(lex_float, "1_2_3E-10", "1_2_3E-10");
|
TOML11_TEST_LEX_ACCEPT(lex_float, "1_2_3E-10", "1_2_3E-10");
|
||||||
TOML11_TEST_LEX_ACCEPT(lex_float, "1_2_3E-1_0", "1_2_3E-1_0");
|
TOML11_TEST_LEX_ACCEPT(lex_float, "1_2_3E-1_0", "1_2_3E-1_0");
|
||||||
|
TOML11_TEST_LEX_ACCEPT(lex_float, "1_2_3E-01", "1_2_3E-01");
|
||||||
|
TOML11_TEST_LEX_ACCEPT(lex_float, "1_2_3E-0_1", "1_2_3E-0_1");
|
||||||
}
|
}
|
||||||
|
|
||||||
BOOST_AUTO_TEST_CASE(test_exponential_invalid)
|
BOOST_AUTO_TEST_CASE(test_exponential_invalid)
|
||||||
@@ -64,12 +66,15 @@ BOOST_AUTO_TEST_CASE(test_both_valid)
|
|||||||
TOML11_TEST_LEX_ACCEPT(lex_float, "6.02e23", "6.02e23");
|
TOML11_TEST_LEX_ACCEPT(lex_float, "6.02e23", "6.02e23");
|
||||||
TOML11_TEST_LEX_ACCEPT(lex_float, "6.02e+23", "6.02e+23");
|
TOML11_TEST_LEX_ACCEPT(lex_float, "6.02e+23", "6.02e+23");
|
||||||
TOML11_TEST_LEX_ACCEPT(lex_float, "1.112_650_06e-17", "1.112_650_06e-17");
|
TOML11_TEST_LEX_ACCEPT(lex_float, "1.112_650_06e-17", "1.112_650_06e-17");
|
||||||
|
TOML11_TEST_LEX_ACCEPT(lex_float, "1.0e-07", "1.0e-07");
|
||||||
}
|
}
|
||||||
|
|
||||||
BOOST_AUTO_TEST_CASE(test_both_invalid)
|
BOOST_AUTO_TEST_CASE(test_both_invalid)
|
||||||
{
|
{
|
||||||
TOML11_TEST_LEX_ACCEPT(lex_float, "1e1.0", "1e1");
|
|
||||||
TOML11_TEST_LEX_REJECT(lex_float, "01e1.0");
|
TOML11_TEST_LEX_REJECT(lex_float, "01e1.0");
|
||||||
|
TOML11_TEST_LEX_ACCEPT(lex_float, "1e1.0", "1e1");
|
||||||
|
TOML11_TEST_LEX_ACCEPT(lex_float, "1.0e_01", "1.0");
|
||||||
|
TOML11_TEST_LEX_ACCEPT(lex_float, "1.0e0__1", "1.0e0");
|
||||||
}
|
}
|
||||||
|
|
||||||
BOOST_AUTO_TEST_CASE(test_special_floating_point)
|
BOOST_AUTO_TEST_CASE(test_special_floating_point)
|
||||||
|
@@ -68,6 +68,8 @@ BOOST_AUTO_TEST_CASE(test_exponential)
|
|||||||
TOML11_TEST_PARSE_EQUAL(parse_floating, "1_2_3E-1_0", 123e-10);
|
TOML11_TEST_PARSE_EQUAL(parse_floating, "1_2_3E-1_0", 123e-10);
|
||||||
TOML11_TEST_PARSE_EQUAL(parse_floating, "+0e0", 0.0);
|
TOML11_TEST_PARSE_EQUAL(parse_floating, "+0e0", 0.0);
|
||||||
TOML11_TEST_PARSE_EQUAL(parse_floating, "-0e0", -0.0);
|
TOML11_TEST_PARSE_EQUAL(parse_floating, "-0e0", -0.0);
|
||||||
|
TOML11_TEST_PARSE_EQUAL(parse_floating, "1_2_3E-01", 123e-1);
|
||||||
|
TOML11_TEST_PARSE_EQUAL(parse_floating, "1_2_3E-0_1", 123e-1);
|
||||||
}
|
}
|
||||||
|
|
||||||
BOOST_AUTO_TEST_CASE(test_exponential_value)
|
BOOST_AUTO_TEST_CASE(test_exponential_value)
|
||||||
@@ -90,6 +92,8 @@ BOOST_AUTO_TEST_CASE(test_exponential_value)
|
|||||||
TOML11_TEST_PARSE_EQUAL_VALUE(parse_value<toml::value>, "1_2_3E-1_0", value(123e-10));
|
TOML11_TEST_PARSE_EQUAL_VALUE(parse_value<toml::value>, "1_2_3E-1_0", value(123e-10));
|
||||||
TOML11_TEST_PARSE_EQUAL_VALUE(parse_value<toml::value>, "+0e0", value( 0.0));
|
TOML11_TEST_PARSE_EQUAL_VALUE(parse_value<toml::value>, "+0e0", value( 0.0));
|
||||||
TOML11_TEST_PARSE_EQUAL_VALUE(parse_value<toml::value>, "-0e0", value(-0.0));
|
TOML11_TEST_PARSE_EQUAL_VALUE(parse_value<toml::value>, "-0e0", value(-0.0));
|
||||||
|
TOML11_TEST_PARSE_EQUAL_VALUE(parse_value<toml::value>, "1_2_3E-01", value(123e-1));
|
||||||
|
TOML11_TEST_PARSE_EQUAL_VALUE(parse_value<toml::value>, "1_2_3E-0_1", value(123e-1));
|
||||||
}
|
}
|
||||||
BOOST_AUTO_TEST_CASE(test_fe)
|
BOOST_AUTO_TEST_CASE(test_fe)
|
||||||
{
|
{
|
||||||
@@ -102,6 +106,7 @@ BOOST_AUTO_TEST_CASE(test_fe_vaule)
|
|||||||
TOML11_TEST_PARSE_EQUAL_VALUE(parse_value<toml::value>, "6.02e23", value(6.02e23));
|
TOML11_TEST_PARSE_EQUAL_VALUE(parse_value<toml::value>, "6.02e23", value(6.02e23));
|
||||||
TOML11_TEST_PARSE_EQUAL_VALUE(parse_value<toml::value>, "6.02e+23", value(6.02e23));
|
TOML11_TEST_PARSE_EQUAL_VALUE(parse_value<toml::value>, "6.02e+23", value(6.02e23));
|
||||||
TOML11_TEST_PARSE_EQUAL_VALUE(parse_value<toml::value>, "1.112_650_06e-17", value(1.11265006e-17));
|
TOML11_TEST_PARSE_EQUAL_VALUE(parse_value<toml::value>, "1.112_650_06e-17", value(1.11265006e-17));
|
||||||
|
TOML11_TEST_PARSE_EQUAL_VALUE(parse_value<toml::value>, "3.141_5e-01", value(3.1415e-1));
|
||||||
}
|
}
|
||||||
|
|
||||||
BOOST_AUTO_TEST_CASE(test_inf)
|
BOOST_AUTO_TEST_CASE(test_inf)
|
||||||
|
Reference in New Issue
Block a user