Skip to content

Commit 76782e5

Browse files
committed
refactor: reuse test string with embedded null char in util_tests
1 parent 24c6546 commit 76782e5

File tree

1 file changed

+8
-17
lines changed

1 file changed

+8
-17
lines changed

src/test/util_tests.cpp

Lines changed: 8 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -38,6 +38,7 @@
3838
#include <boost/test/unit_test.hpp>
3939

4040
using namespace std::literals;
41+
static const std::string STRING_WITH_EMBEDDED_NULL_CHAR{"1"s "\0" "1"s};
4142

4243
/* defined in logging.cpp */
4344
namespace BCLog {
@@ -1272,7 +1273,7 @@ BOOST_AUTO_TEST_CASE(util_ParseMoney)
12721273

12731274
// Parsing strings with embedded NUL characters should fail
12741275
BOOST_CHECK(!ParseMoney("\0-1"s, ret));
1275-
BOOST_CHECK(!ParseMoney("\0" "1"s, ret));
1276+
BOOST_CHECK(!ParseMoney(STRING_WITH_EMBEDDED_NULL_CHAR, ret));
12761277
BOOST_CHECK(!ParseMoney("1\0"s, ret));
12771278
}
12781279

@@ -1450,9 +1451,7 @@ BOOST_AUTO_TEST_CASE(test_ParseInt32)
14501451
BOOST_CHECK(!ParseInt32("aap", &n));
14511452
BOOST_CHECK(!ParseInt32("0x1", &n)); // no hex
14521453
BOOST_CHECK(!ParseInt32("0x1", &n)); // no hex
1453-
const char test_bytes[] = {'1', 0, '1'};
1454-
std::string teststr(test_bytes, sizeof(test_bytes));
1455-
BOOST_CHECK(!ParseInt32(teststr, &n)); // no embedded NULs
1454+
BOOST_CHECK(!ParseInt32(STRING_WITH_EMBEDDED_NULL_CHAR, &n));
14561455
// Overflow and underflow
14571456
BOOST_CHECK(!ParseInt32("-2147483649", nullptr));
14581457
BOOST_CHECK(!ParseInt32("2147483648", nullptr));
@@ -1480,9 +1479,7 @@ BOOST_AUTO_TEST_CASE(test_ParseInt64)
14801479
BOOST_CHECK(!ParseInt64("1a", &n));
14811480
BOOST_CHECK(!ParseInt64("aap", &n));
14821481
BOOST_CHECK(!ParseInt64("0x1", &n)); // no hex
1483-
const char test_bytes[] = {'1', 0, '1'};
1484-
std::string teststr(test_bytes, sizeof(test_bytes));
1485-
BOOST_CHECK(!ParseInt64(teststr, &n)); // no embedded NULs
1482+
BOOST_CHECK(!ParseInt64(STRING_WITH_EMBEDDED_NULL_CHAR, &n));
14861483
// Overflow and underflow
14871484
BOOST_CHECK(!ParseInt64("-9223372036854775809", nullptr));
14881485
BOOST_CHECK(!ParseInt64("9223372036854775808", nullptr));
@@ -1517,7 +1514,7 @@ BOOST_AUTO_TEST_CASE(test_ParseUInt8)
15171514
BOOST_CHECK(!ParseUInt8("aap", &n));
15181515
BOOST_CHECK(!ParseUInt8("0x1", &n)); // no hex
15191516
BOOST_CHECK(!ParseUInt8("0x1", &n)); // no hex
1520-
BOOST_CHECK(!ParseUInt8("1"s "\0" "1"s, &n)); // no embedded NULs
1517+
BOOST_CHECK(!ParseUInt8(STRING_WITH_EMBEDDED_NULL_CHAR, &n));
15211518
// Overflow and underflow
15221519
BOOST_CHECK(!ParseUInt8("-255", &n));
15231520
BOOST_CHECK(!ParseUInt8("256", &n));
@@ -1555,9 +1552,7 @@ BOOST_AUTO_TEST_CASE(test_ParseUInt32)
15551552
BOOST_CHECK(!ParseUInt32("aap", &n));
15561553
BOOST_CHECK(!ParseUInt32("0x1", &n)); // no hex
15571554
BOOST_CHECK(!ParseUInt32("0x1", &n)); // no hex
1558-
const char test_bytes[] = {'1', 0, '1'};
1559-
std::string teststr(test_bytes, sizeof(test_bytes));
1560-
BOOST_CHECK(!ParseUInt32(teststr, &n)); // no embedded NULs
1555+
BOOST_CHECK(!ParseUInt32(STRING_WITH_EMBEDDED_NULL_CHAR, &n));
15611556
// Overflow and underflow
15621557
BOOST_CHECK(!ParseUInt32("-2147483648", &n));
15631558
BOOST_CHECK(!ParseUInt32("4294967296", &n));
@@ -1586,9 +1581,7 @@ BOOST_AUTO_TEST_CASE(test_ParseUInt64)
15861581
BOOST_CHECK(!ParseUInt64("1a", &n));
15871582
BOOST_CHECK(!ParseUInt64("aap", &n));
15881583
BOOST_CHECK(!ParseUInt64("0x1", &n)); // no hex
1589-
const char test_bytes[] = {'1', 0, '1'};
1590-
std::string teststr(test_bytes, sizeof(test_bytes));
1591-
BOOST_CHECK(!ParseUInt64(teststr, &n)); // no embedded NULs
1584+
BOOST_CHECK(!ParseUInt64(STRING_WITH_EMBEDDED_NULL_CHAR, &n));
15921585
// Overflow and underflow
15931586
BOOST_CHECK(!ParseUInt64("-9223372036854775809", nullptr));
15941587
BOOST_CHECK(!ParseUInt64("18446744073709551616", nullptr));
@@ -1618,9 +1611,7 @@ BOOST_AUTO_TEST_CASE(test_ParseDouble)
16181611
BOOST_CHECK(!ParseDouble("1a", &n));
16191612
BOOST_CHECK(!ParseDouble("aap", &n));
16201613
BOOST_CHECK(!ParseDouble("0x1", &n)); // no hex
1621-
const char test_bytes[] = {'1', 0, '1'};
1622-
std::string teststr(test_bytes, sizeof(test_bytes));
1623-
BOOST_CHECK(!ParseDouble(teststr, &n)); // no embedded NULs
1614+
BOOST_CHECK(!ParseDouble(STRING_WITH_EMBEDDED_NULL_CHAR, &n));
16241615
// Overflow and underflow
16251616
BOOST_CHECK(!ParseDouble("-1e10000", nullptr));
16261617
BOOST_CHECK(!ParseDouble("1e10000", nullptr));

0 commit comments

Comments
 (0)