6
6
7
7
#include < boost/crypt/hash/md5.hpp>
8
8
#include < boost/core/lightweight_test.hpp>
9
+ #include < iostream>
9
10
#include < string>
10
11
#include < array>
11
12
#include < tuple>
12
13
13
- constexpr std::array<std::tuple<const char *, uint32_t , uint32_t , uint32_t , uint32_t >, 3 > test_values =
14
+ constexpr std::array<std::tuple<const char *, uint32_t , uint32_t , uint32_t , uint32_t >, 9 > test_values =
14
15
{
15
16
std::make_tuple (" The quick brown fox jumps over the lazy dog" , 0x9e107d9d , 0x372bb682 , 0x6bd81d35 , 0x42a419d6 ),
16
17
std::make_tuple (" The quick brown fox jumps over the lazy dog." , 0xe4d909c2 , 0x90d0fb1c , 0xa068ffad , 0xdf22cbd0 ),
17
- std::make_tuple (" " , 0xd41d8cd9 , 0x8f00b204 , 0xe9800998 , 0xecf8427e )
18
+ std::make_tuple (" " , 0xd41d8cd9 , 0x8f00b204 , 0xe9800998 , 0xecf8427e ),
19
+ std::make_tuple (" ddcc8542894a27456bbeb43f51f38764c32f72ae" , 0x3b340f00 , 0x97312ec8 , 0x2fa4da0d , 0x7da53002 ),
20
+ std::make_tuple (" webmin1980" , 0xb78aae35 , 0x6709f8c3 , 0x1118ea61 , 0x3980954b ),
21
+ std::make_tuple (" $2y$10$EQAmcJw0cg.rt.6..SJ2bulFhDo0eWtuMhkfDMPGsNdap4xrOY61K" , 0x40bbe664 , 0x4efd9354 , 0x078d8c70 , 0xfb6c9f42 ),
22
+ std::make_tuple (" pkirsanov" , 0x8793ce04 , 0xf0c5f1e8 , 0xed1e0c78 , 0xf249fe1b ),
23
+ std::make_tuple (" Eleanor" , 0xd37e4317 , 0x4905de70 , 0xfbb5b038 , 0xd7247f57 ),
24
+ std::make_tuple (" The Whirlpool Galaxy is about 88% the size of the Milky Way, with a diameter of 76,900 light-years" , 0xd5dfd7b4 , 0x1235abc7 , 0xa9a3205b , 0x6896f34d ),
18
25
};
19
26
20
27
void basic_tests ()
21
28
{
22
29
for (const auto & test_value : test_values)
23
30
{
24
31
const auto message_result {boost::crypt::md5 (std::get<0 >(test_value))};
25
- BOOST_TEST_EQ (message_result[0 ], std::get<1 >(test_value));
26
- BOOST_TEST_EQ (message_result[1 ], std::get<2 >(test_value));
27
- BOOST_TEST_EQ (message_result[2 ], std::get<3 >(test_value));
28
- BOOST_TEST_EQ (message_result[3 ], std::get<4 >(test_value));
32
+ if (!(BOOST_TEST_EQ (message_result[0 ], std::get<1 >(test_value)) &&
33
+ BOOST_TEST_EQ (message_result[1 ], std::get<2 >(test_value)) &&
34
+ BOOST_TEST_EQ (message_result[2 ], std::get<3 >(test_value)) &&
35
+ BOOST_TEST_EQ (message_result[3 ], std::get<4 >(test_value))))
36
+ {
37
+ std::cerr << " Failure with message: " << std::get<0 >(test_value) << ' \n ' ;
38
+ }
29
39
}
30
40
}
31
41
@@ -35,10 +45,13 @@ void string_test()
35
45
{
36
46
const std::string string_message {std::get<0 >(test_value)};
37
47
const auto message_result {boost::crypt::md5 (string_message)};
38
- BOOST_TEST_EQ (message_result[0 ], std::get<1 >(test_value));
39
- BOOST_TEST_EQ (message_result[1 ], std::get<2 >(test_value));
40
- BOOST_TEST_EQ (message_result[2 ], std::get<3 >(test_value));
41
- BOOST_TEST_EQ (message_result[3 ], std::get<4 >(test_value));
48
+ if (!(BOOST_TEST_EQ (message_result[0 ], std::get<1 >(test_value)) &&
49
+ BOOST_TEST_EQ (message_result[1 ], std::get<2 >(test_value)) &&
50
+ BOOST_TEST_EQ (message_result[2 ], std::get<3 >(test_value)) &&
51
+ BOOST_TEST_EQ (message_result[3 ], std::get<4 >(test_value))))
52
+ {
53
+ std::cerr << " Failure with message: " << std::get<0 >(test_value) << ' \n ' ;
54
+ }
42
55
}
43
56
}
44
57
@@ -50,10 +63,13 @@ void string_view_test()
50
63
const std::string string_message {std::get<0 >(test_value)};
51
64
const std::string_view string_view_message {string_message};
52
65
const auto message_result {boost::crypt::md5 (string_view_message)};
53
- BOOST_TEST_EQ (message_result[0 ], std::get<1 >(test_value));
54
- BOOST_TEST_EQ (message_result[1 ], std::get<2 >(test_value));
55
- BOOST_TEST_EQ (message_result[2 ], std::get<3 >(test_value));
56
- BOOST_TEST_EQ (message_result[3 ], std::get<4 >(test_value));
66
+ if (!(BOOST_TEST_EQ (message_result[0 ], std::get<1 >(test_value)) &&
67
+ BOOST_TEST_EQ (message_result[1 ], std::get<2 >(test_value)) &&
68
+ BOOST_TEST_EQ (message_result[2 ], std::get<3 >(test_value)) &&
69
+ BOOST_TEST_EQ (message_result[3 ], std::get<4 >(test_value))))
70
+ {
71
+ std::cerr << " Failure with message: " << std::get<0 >(test_value) << ' \n ' ;
72
+ }
57
73
}
58
74
#endif
59
75
}
@@ -78,10 +94,13 @@ void test_class()
78
94
std::array<std::uint32_t , 4 > message_result {};
79
95
hasher.get_digest (message_result.begin (), message_result.size ());
80
96
81
- BOOST_TEST_EQ (message_result[0 ], std::get<1 >(test_value));
82
- BOOST_TEST_EQ (message_result[1 ], std::get<2 >(test_value));
83
- BOOST_TEST_EQ (message_result[2 ], std::get<3 >(test_value));
84
- BOOST_TEST_EQ (message_result[3 ], std::get<4 >(test_value));
97
+ if (!(BOOST_TEST_EQ (message_result[0 ], std::get<1 >(test_value)) &&
98
+ BOOST_TEST_EQ (message_result[1 ], std::get<2 >(test_value)) &&
99
+ BOOST_TEST_EQ (message_result[2 ], std::get<3 >(test_value)) &&
100
+ BOOST_TEST_EQ (message_result[3 ], std::get<4 >(test_value))))
101
+ {
102
+ std::cerr << " Failure with message: " << std::get<0 >(test_value) << ' \n ' ;
103
+ }
85
104
86
105
hasher.init ();
87
106
}
0 commit comments