21 #define BOOST_TEST_MODULE libjmmcg_tests
22 #include <boost/test/included/unit_test.hpp>
24 #include "core/enum_as_char_array.hpp"
26 using namespace libjmmcg;
36 static char const str3000[]=
"3000";
37 static char const str1234[]=
"1234";
40 BOOST_AUTO_TEST_SUITE(enum_as_char_array)
42 BOOST_AUTO_TEST_CASE(dynamic_string_literal_conversiom) {
44 BOOST_CHECK_EQUAL(str3000, std::string(to_array<enum_tags_as_strs, enum_tags_as_strs::e1>::value));
46 BOOST_CHECK(strcmp(str3000, to_array<enum_tags_as_strs, enum_tags_as_strs::e1>::value)==0);
49 BOOST_CHECK_EQUAL(
static_cast<std::uint64_t>(t3),
static_cast<std::uint64_t>(enum_tags_as_strs::e1));
51 BOOST_CHECK(t3==enum_tags_as_strs::e1);
53 BOOST_CHECK(t1234==enum_tags_as_strs::e4);
54 const auto t3142=enum_tags::convert<enum_tags_as_strs>(str3142);
56 BOOST_CHECK(t3142==enum_tags_as_strs::e3);
59 BOOST_AUTO_TEST_SUITE_END()