Skip to content

Commit d1ffa8e

Browse files
committed
Add additional test sets
1 parent 5969bca commit d1ffa8e

File tree

1 file changed

+37
-18
lines changed

1 file changed

+37
-18
lines changed

test/test_md5.cpp

Lines changed: 37 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -6,26 +6,36 @@
66

77
#include <boost/crypt/hash/md5.hpp>
88
#include <boost/core/lightweight_test.hpp>
9+
#include <iostream>
910
#include <string>
1011
#include <array>
1112
#include <tuple>
1213

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 =
1415
{
1516
std::make_tuple("The quick brown fox jumps over the lazy dog", 0x9e107d9d, 0x372bb682, 0x6bd81d35, 0x42a419d6),
1617
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),
1825
};
1926

2027
void basic_tests()
2128
{
2229
for (const auto& test_value : test_values)
2330
{
2431
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+
}
2939
}
3040
}
3141

@@ -35,10 +45,13 @@ void string_test()
3545
{
3646
const std::string string_message {std::get<0>(test_value)};
3747
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+
}
4255
}
4356
}
4457

@@ -50,10 +63,13 @@ void string_view_test()
5063
const std::string string_message {std::get<0>(test_value)};
5164
const std::string_view string_view_message {string_message};
5265
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+
}
5773
}
5874
#endif
5975
}
@@ -78,10 +94,13 @@ void test_class()
7894
std::array<std::uint32_t, 4> message_result {};
7995
hasher.get_digest(message_result.begin(), message_result.size());
8096

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+
}
85104

86105
hasher.init();
87106
}

0 commit comments

Comments
 (0)