From 59c2f3cfa7bd83eabf305cec961335153a815084 Mon Sep 17 00:00:00 2001 From: Mateusz Malicki Date: Tue, 2 Dec 2014 16:17:13 +0100 Subject: [PATCH] Test ability to copy union and to set union type [Bug/Feature] Test ability to copy union and to set union type [Cause] Need to copy and add new union elements [Solution] 1) Clear vector with unions; 2) set, copy and move elements [Verification] Build, install, tests Change-Id: Iea2d7eca36edcfd34f768d1e99a3da970300afd8 --- tests/unit_tests/config/ut-configuration.cpp | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/tests/unit_tests/config/ut-configuration.cpp b/tests/unit_tests/config/ut-configuration.cpp index 7f9703b..8aab028 100644 --- a/tests/unit_tests/config/ut-configuration.cpp +++ b/tests/unit_tests/config/ut-configuration.cpp @@ -382,9 +382,18 @@ BOOST_AUTO_TEST_CASE(ConfigUnion) BOOST_CHECK_EQUAL(subConfig.intVal, 54321); BOOST_CHECK(testConfig.unions[0].is()); BOOST_CHECK(testConfig.unions[1].is()); - std::string out = saveToString(testConfig); BOOST_CHECK_EQUAL(out, jsonTestString); + + //Check move and copy + std::vector unions(2); + unions[0].set(2); + unions[1].set(std::move(testConfig.unions[1].as())); + BOOST_CHECK(testConfig.unions[1].as().intVector.empty()); + testConfig.unions.clear(); + testConfig.unions = unions; + out = saveToString(testConfig); + BOOST_CHECK_EQUAL(out, jsonTestString); } BOOST_AUTO_TEST_SUITE_END() -- 2.7.4