]>
Commit | Line | Data |
---|---|---|
5c9b1205 AT |
1 | #define BOOST_TEST_DYN_LINK |
2 | #define BOOST_TEST_NO_MAIN | |
870a0fe4 AT |
3 | #ifdef HAVE_CONFIG_H |
4 | #include "config.h" | |
5 | #endif | |
5c9b1205 AT |
6 | #include <boost/test/unit_test.hpp> |
7 | #include <boost/assign/list_of.hpp> | |
fa8fd4d2 | 8 | |
5c9b1205 AT |
9 | #include <boost/tuple/tuple.hpp> |
10 | #include "base32.hh" | |
11 | ||
12 | BOOST_AUTO_TEST_SUITE(test_base32_cc) | |
13 | ||
031f6850 | 14 | BOOST_AUTO_TEST_CASE(test_base32_basic) { |
5c9b1205 AT |
15 | typedef boost::tuple<const std::string, const std::string> case_t; |
16 | typedef std::list<case_t> cases_t; | |
17 | ||
18 | // RFC test vectors | |
19 | cases_t cases = boost::assign::list_of | |
20 | (case_t(std::string(""), std::string(""))) | |
1bad4190 KM |
21 | (case_t(std::string("f"), std::string("co======"))) |
22 | (case_t(std::string("fo"), std::string("cpng===="))) | |
23 | (case_t(std::string("foo"), std::string("cpnmu==="))) | |
24 | (case_t(std::string("foob"), std::string("cpnmuog="))) | |
25 | (case_t(std::string("fooba"), std::string("cpnmuoj1"))) | |
26 | (case_t(std::string("foobar"), std::string("cpnmuoj1e8======"))) | |
5c9b1205 AT |
27 | ; |
28 | ||
ef7cd021 | 29 | for(const case_t& val : cases) { |
5c9b1205 AT |
30 | std::string res; |
31 | res = toBase32Hex(val.get<0>()); | |
32 | BOOST_CHECK_EQUAL(res, val.get<1>()); | |
33 | res = fromBase32Hex(val.get<1>()); | |
34 | BOOST_CHECK_EQUAL(res, val.get<0>()); | |
35 | } | |
36 | }; | |
37 | ||
38 | BOOST_AUTO_TEST_SUITE_END(); |