From 4008c24e84c48577c4e9e8d820a4850f89fae7f2 Mon Sep 17 00:00:00 2001 From: ToruNiina Date: Mon, 17 Jun 2019 22:50:38 +0900 Subject: [PATCH] test: add test for init-list-map to value conversion --- tests/test_value.cpp | 17 +++++++++++++++-- 1 file changed, 15 insertions(+), 2 deletions(-) diff --git a/tests/test_value.cpp b/tests/test_value.cpp index d9cfca3..ee0f003 100644 --- a/tests/test_value.cpp +++ b/tests/test_value.cpp @@ -817,7 +817,7 @@ BOOST_AUTO_TEST_CASE(test_value_table) BOOST_CHECK(v1.is_table()); BOOST_CHECK_EQUAL(v1.cast().at("foo").cast(), 42); - BOOST_CHECK_EQUAL(v1.cast().at("bar").cast(), 3.14); + BOOST_CHECK_EQUAL(v1.cast().at("bar").cast(), 3.14); BOOST_CHECK_EQUAL(v1.cast().at("baz").cast().str, "qux"); BOOST_CHECK_EQUAL(v1.as_table().at("foo").as_integer(), 42); BOOST_CHECK_EQUAL(v1.as_table().at("bar").as_floating(), 3.14); @@ -826,6 +826,19 @@ BOOST_AUTO_TEST_CASE(test_value_table) BOOST_CHECK_EQUAL(v1.as_table(std::nothrow).at("bar").as_floating(), 3.14); BOOST_CHECK_EQUAL(v1.as_table(std::nothrow).at("baz").as_string().str, "qux"); + v1 = {{"foo", 2.71}, {"bar", 54}, {"baz", "quux"}}; + + BOOST_CHECK_EQUAL(v1.type(), toml::value_t::table); + BOOST_CHECK(v1.is(toml::value_t::table)); + BOOST_CHECK(v1.is()); + BOOST_CHECK(v1.is_table()); + + BOOST_CHECK_EQUAL(v1.cast().at("foo").cast(), 2.71); + BOOST_CHECK_EQUAL(v1.cast().at("bar").cast(), 54); + BOOST_CHECK_EQUAL(v1.cast().at("baz").cast().str, "quux"); + BOOST_CHECK_EQUAL(v1.as_table().at("foo").as_floating(), 2.71); + BOOST_CHECK_EQUAL(v1.as_table().at("bar").as_integer(), 54); + BOOST_CHECK_EQUAL(v1.as_table().at("baz").as_string().str, "quux"); v1 = toml::table{{"foo", 2.71}, {"bar", 54}, {"baz", "quux"}}; @@ -849,7 +862,7 @@ BOOST_AUTO_TEST_CASE(test_value_table) BOOST_CHECK(v3.is()); BOOST_CHECK(v3.is_table()); - BOOST_CHECK_EQUAL(v3.cast().at("foo").cast(), 2.71); + BOOST_CHECK_EQUAL(v3.cast().at("foo").cast(), 2.71); BOOST_CHECK_EQUAL(v3.cast().at("bar").cast(), 54); BOOST_CHECK_EQUAL(v3.cast().at("baz").cast().str, "quux"); BOOST_CHECK_EQUAL(v3.as_table().at("foo").as_floating(), 2.71);