Skip to content

Commit 39dcac2

Browse files
committed
Merge #12570: Add test cases for HexStr (std::reverse_iterator and corner cases)
ac48861 Add tests for HexStr std::reverse_iterator cases (Kosta Zertsekel) 90eac8c Add tests for HexStr corner cases (Kosta Zertsekel) Pull request description: Tree-SHA512: 6298d6fdc344e67a9ea6dc74eadb04e68f4f49fc4511d4a8765cafce7eeb8603f96ebedd82c13811326bcaf1ee511946419b651ca411f711baca91bec51947d6
2 parents be263fa + ac48861 commit 39dcac2

File tree

1 file changed

+66
-0
lines changed

1 file changed

+66
-0
lines changed

src/test/util_tests.cpp

Lines changed: 66 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -81,6 +81,20 @@ BOOST_AUTO_TEST_CASE(util_HexStr)
8181
HexStr(ParseHex_expected, ParseHex_expected + 5, true),
8282
"04 67 8a fd b0");
8383

84+
BOOST_CHECK_EQUAL(
85+
HexStr(ParseHex_expected + sizeof(ParseHex_expected),
86+
ParseHex_expected + sizeof(ParseHex_expected)),
87+
"");
88+
89+
BOOST_CHECK_EQUAL(
90+
HexStr(ParseHex_expected + sizeof(ParseHex_expected),
91+
ParseHex_expected + sizeof(ParseHex_expected), true),
92+
"");
93+
94+
BOOST_CHECK_EQUAL(
95+
HexStr(ParseHex_expected, ParseHex_expected),
96+
"");
97+
8498
BOOST_CHECK_EQUAL(
8599
HexStr(ParseHex_expected, ParseHex_expected, true),
86100
"");
@@ -90,6 +104,58 @@ BOOST_AUTO_TEST_CASE(util_HexStr)
90104
BOOST_CHECK_EQUAL(
91105
HexStr(ParseHex_vec, true),
92106
"04 67 8a fd b0");
107+
108+
BOOST_CHECK_EQUAL(
109+
HexStr(ParseHex_vec.rbegin(), ParseHex_vec.rend()),
110+
"b0fd8a6704"
111+
);
112+
113+
BOOST_CHECK_EQUAL(
114+
HexStr(ParseHex_vec.rbegin(), ParseHex_vec.rend(), true),
115+
"b0 fd 8a 67 04"
116+
);
117+
118+
BOOST_CHECK_EQUAL(
119+
HexStr(std::reverse_iterator<const uint8_t *>(ParseHex_expected),
120+
std::reverse_iterator<const uint8_t *>(ParseHex_expected)),
121+
""
122+
);
123+
124+
BOOST_CHECK_EQUAL(
125+
HexStr(std::reverse_iterator<const uint8_t *>(ParseHex_expected),
126+
std::reverse_iterator<const uint8_t *>(ParseHex_expected), true),
127+
""
128+
);
129+
130+
BOOST_CHECK_EQUAL(
131+
HexStr(std::reverse_iterator<const uint8_t *>(ParseHex_expected + 1),
132+
std::reverse_iterator<const uint8_t *>(ParseHex_expected)),
133+
"04"
134+
);
135+
136+
BOOST_CHECK_EQUAL(
137+
HexStr(std::reverse_iterator<const uint8_t *>(ParseHex_expected + 1),
138+
std::reverse_iterator<const uint8_t *>(ParseHex_expected), true),
139+
"04"
140+
);
141+
142+
BOOST_CHECK_EQUAL(
143+
HexStr(std::reverse_iterator<const uint8_t *>(ParseHex_expected + 5),
144+
std::reverse_iterator<const uint8_t *>(ParseHex_expected)),
145+
"b0fd8a6704"
146+
);
147+
148+
BOOST_CHECK_EQUAL(
149+
HexStr(std::reverse_iterator<const uint8_t *>(ParseHex_expected + 5),
150+
std::reverse_iterator<const uint8_t *>(ParseHex_expected), true),
151+
"b0 fd 8a 67 04"
152+
);
153+
154+
BOOST_CHECK_EQUAL(
155+
HexStr(std::reverse_iterator<const uint8_t *>(ParseHex_expected + 65),
156+
std::reverse_iterator<const uint8_t *>(ParseHex_expected)),
157+
"5f1df16b2b704c8a578d0bbaf74d385cde12c11ee50455f3c438ef4c3fbcf649b6de611feae06279a60939e028a8d65c10b73071a6f16719274855feb0fd8a6704"
158+
);
93159
}
94160

95161

0 commit comments

Comments
 (0)