]>
Commit | Line | Data |
---|---|---|
1c2d079d | 1 | #ifndef BOOST_TEST_DYN_LINK |
5c9b1205 | 2 | #define BOOST_TEST_DYN_LINK |
1c2d079d FM |
3 | #endif |
4 | ||
5c9b1205 | 5 | #define BOOST_TEST_NO_MAIN |
870a0fe4 AT |
6 | #ifdef HAVE_CONFIG_H |
7 | #include "config.h" | |
8 | #endif | |
5c9b1205 AT |
9 | #include <boost/test/unit_test.hpp> |
10 | #include <boost/assign/list_of.hpp> | |
fa8fd4d2 | 11 | |
5c9b1205 AT |
12 | #include "base32.hh" |
13 | ||
14 | BOOST_AUTO_TEST_SUITE(test_base32_cc) | |
15 | ||
031f6850 | 16 | BOOST_AUTO_TEST_CASE(test_base32_basic) { |
1a09e47b | 17 | typedef std::tuple<const std::string, const std::string> case_t; |
5c9b1205 AT |
18 | typedef std::list<case_t> cases_t; |
19 | ||
20 | // RFC test vectors | |
21 | cases_t cases = boost::assign::list_of | |
22 | (case_t(std::string(""), std::string(""))) | |
1bad4190 KM |
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======"))) | |
5c9b1205 AT |
29 | ; |
30 | ||
ef7cd021 | 31 | for(const case_t& val : cases) { |
5c9b1205 | 32 | std::string res; |
1a09e47b RG |
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)); | |
5c9b1205 AT |
37 | } |
38 | }; | |
39 | ||
40 | BOOST_AUTO_TEST_SUITE_END(); |