diff --git a/tests/test_literals.cpp b/tests/test_literals.cpp index 7431f80..2342a44 100644 --- a/tests/test_literals.cpp +++ b/tests/test_literals.cpp @@ -33,6 +33,18 @@ BOOST_AUTO_TEST_CASE(test_file_as_literal) b = "baz" )"_toml; + BOOST_CHECK_EQUAL(r, v); + } + { + const toml::value r{ + {"table", toml::table{{"a", 42}, {"b", "baz"}}} + }; + const toml::value v = u8R"( + [table] + a = 42 + b = "baz" + )"_toml; + BOOST_CHECK_EQUAL(r, v); } } @@ -91,6 +103,19 @@ BOOST_AUTO_TEST_CASE(test_value_as_literal) BOOST_CHECK(v1.is_array()); BOOST_CHECK((toml::get>(v1) == std::vector{1,2,3})); + + const toml::value v2 = u8R"([1,])"_toml; + + BOOST_CHECK(v2.is_array()); + BOOST_CHECK((toml::get>(v2) == std::vector{1})); + + const toml::value v3 = u8R"([[1,]])"_toml; + BOOST_CHECK(v3.is_array()); + BOOST_CHECK((toml::get>(toml::get(v3).front()) == std::vector{1})); + + const toml::value v4 = u8R"([[1],])"_toml; + BOOST_CHECK(v4.is_array()); + BOOST_CHECK((toml::get>(toml::get(v4).front()) == std::vector{1})); } { const toml::value v1 = u8R"({a = 42})"_toml;