]>
Commit | Line | Data |
---|---|---|
1c2d079d | 1 | #ifndef BOOST_TEST_DYN_LINK |
3213be1e | 2 | #define BOOST_TEST_DYN_LINK |
1c2d079d FM |
3 | #endif |
4 | ||
3213be1e | 5 | #define BOOST_TEST_NO_MAIN |
1c2d079d | 6 | |
870a0fe4 AT |
7 | #ifdef HAVE_CONFIG_H |
8 | #include "config.h" | |
9 | #endif | |
3213be1e AT |
10 | #include <boost/test/unit_test.hpp> |
11 | #include <boost/assign/list_of.hpp> | |
fa8fd4d2 | 12 | |
3213be1e AT |
13 | #include <boost/tuple/tuple.hpp> |
14 | ||
15 | #include "sha.hh" | |
16 | #include "misc.hh" | |
17 | ||
18 | using namespace boost; | |
19 | using namespace boost::assign; | |
20 | ||
21 | BOOST_AUTO_TEST_SUITE(test_sha_hh) | |
22 | ||
23 | // input, output | |
ec47cf6f FM |
24 | using case_t = boost::tuple<const std::string, const std::string>; |
25 | using cases_t = std::vector<case_t>; | |
3213be1e | 26 | |
27fe3141 FM |
27 | BOOST_AUTO_TEST_CASE(test_sha1) |
28 | { | |
29 | cases_t cases = list_of(case_t("abc", "a9 99 3e 36 47 06 81 6a ba 3e 25 71 78 50 c2 6c 9c d0 d8 9d "))(case_t("abcdbcdecdefdefgefghfghighijhijkijkljklmklmnlmnomnopnopq", "84 98 3e 44 1c 3b d2 6e ba ae 4a a1 f9 51 29 e5 e5 46 70 f1 ")); | |
30 | ||
31 | for (case_t& val : cases) { | |
ec47cf6f | 32 | BOOST_CHECK_EQUAL(makeHexDump(pdns::sha1sum(val.get<0>())), val.get<1>()); |
27fe3141 | 33 | } |
3213be1e AT |
34 | } |
35 | ||
27fe3141 FM |
36 | BOOST_AUTO_TEST_CASE(test_sha256) |
37 | { | |
38 | cases_t cases = list_of(case_t("abc", "ba 78 16 bf 8f 01 cf ea 41 41 40 de 5d ae 22 23 b0 03 61 a3 96 17 7a 9c b4 10 ff 61 f2 00 15 ad "))(case_t("abcdbcdecdefdefgefghfghighijhijkijkljklmklmnlmnomnopnopq", "24 8d 6a 61 d2 06 38 b8 e5 c0 26 93 0c 3e 60 39 a3 3c e4 59 64 ff 21 67 f6 ec ed d4 19 db 06 c1 ")); | |
3213be1e | 39 | |
27fe3141 | 40 | for (case_t& val : cases) { |
ec47cf6f | 41 | BOOST_CHECK_EQUAL(makeHexDump(pdns::sha256sum(val.get<0>())), val.get<1>()); |
27fe3141 | 42 | } |
3213be1e AT |
43 | } |
44 | ||
27fe3141 FM |
45 | BOOST_AUTO_TEST_CASE(test_sha384) |
46 | { | |
47 | cases_t cases = list_of(case_t("abc", "cb 00 75 3f 45 a3 5e 8b b5 a0 3d 69 9a c6 50 07 27 2c 32 ab 0e de d1 63 1a 8b 60 5a 43 ff 5b ed 80 86 07 2b a1 e7 cc 23 58 ba ec a1 34 c8 25 a7 "))(case_t("abcdbcdecdefdefgefghfghighijhijkijkljklmklmnlmnomnopnopq", "33 91 fd dd fc 8d c7 39 37 07 a6 5b 1b 47 09 39 7c f8 b1 d1 62 af 05 ab fe 8f 45 0d e5 f3 6b c6 b0 45 5a 85 20 bc 4e 6f 5f e9 5b 1f e3 c8 45 2b ")); | |
3213be1e | 48 | |
27fe3141 | 49 | for (case_t& val : cases) { |
ec47cf6f | 50 | BOOST_CHECK_EQUAL(makeHexDump(pdns::sha384sum(val.get<0>())), val.get<1>()); |
27fe3141 | 51 | } |
3213be1e AT |
52 | } |
53 | ||
27fe3141 FM |
54 | BOOST_AUTO_TEST_CASE(test_sha512) |
55 | { | |
56 | cases_t cases = list_of(case_t("abc", "dd af 35 a1 93 61 7a ba cc 41 73 49 ae 20 41 31 12 e6 fa 4e 89 a9 7e a2 0a 9e ee e6 4b 55 d3 9a 21 92 99 2a 27 4f c1 a8 36 ba 3c 23 a3 fe eb bd 45 4d 44 23 64 3c e8 0e 2a 9a c9 4f a5 4c a4 9f "))(case_t("abcdbcdecdefdefgefghfghighijhijkijkljklmklmnlmnomnopnopq", "20 4a 8f c6 dd a8 2f 0a 0c ed 7b eb 8e 08 a4 16 57 c1 6e f4 68 b2 28 a8 27 9b e3 31 a7 03 c3 35 96 fd 15 c1 3b 1b 07 f9 aa 1d 3b ea 57 78 9c a0 31 ad 85 c7 a7 1d d7 03 54 ec 63 12 38 ca 34 45 ")); | |
3213be1e | 57 | |
27fe3141 | 58 | for (case_t& val : cases) { |
ec47cf6f | 59 | BOOST_CHECK_EQUAL(makeHexDump(pdns::sha512sum(val.get<0>())), val.get<1>()); |
27fe3141 | 60 | } |
3213be1e AT |
61 | } |
62 | ||
63 | BOOST_AUTO_TEST_SUITE_END() |