]> git.ipfire.org Git - thirdparty/pdns.git/blame - pdns/test-base32_cc.cc
rec: ensure correct service user on debian
[thirdparty/pdns.git] / pdns / test-base32_cc.cc
CommitLineData
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
12BOOST_AUTO_TEST_SUITE(test_base32_cc)
13
031f6850 14BOOST_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
38BOOST_AUTO_TEST_SUITE_END();