]>
git.ipfire.org Git - thirdparty/pdns.git/blob - pdns/test-base32_cc.cc
1 #ifndef BOOST_TEST_DYN_LINK
2 #define BOOST_TEST_DYN_LINK
5 #define BOOST_TEST_NO_MAIN
9 #include <boost/test/unit_test.hpp>
10 #include <boost/assign/list_of.hpp>
14 BOOST_AUTO_TEST_SUITE(test_base32_cc
)
16 BOOST_AUTO_TEST_CASE(test_base32_basic
) {
17 typedef std::tuple
<const std::string
, const std::string
> case_t
;
18 typedef std::list
<case_t
> cases_t
;
21 cases_t cases
= boost::assign::list_of
22 (case_t(std::string(""), std::string("")))
23 (case_t(std::string("f"), std::string("co======")))
24 (case_t(std::string("fo"), std::string("cpng====")))
25 (case_t(std::string("foo"), std::string("cpnmu===")))
26 (case_t(std::string("foob"), std::string("cpnmuog=")))
27 (case_t(std::string("fooba"), std::string("cpnmuoj1")))
28 (case_t(std::string("foobar"), std::string("cpnmuoj1e8======")))
31 for(const case_t
& val
: cases
) {
33 res
= toBase32Hex(std::get
<0>(val
));
34 BOOST_CHECK_EQUAL(res
, std::get
<1>(val
));
35 res
= fromBase32Hex(std::get
<1>(val
));
36 BOOST_CHECK_EQUAL(res
, std::get
<0>(val
));
40 BOOST_AUTO_TEST_SUITE_END();