diff options
author | Cory Fields <cory-nospam-@coryfields.com> | 2017-05-19 00:00:39 -0400 |
---|---|---|
committer | Cory Fields <cory-nospam-@coryfields.com> | 2017-05-19 00:00:44 -0400 |
commit | 6b51b0a0760d18ad54f36d8b10935501b3ed489c (patch) | |
tree | c9dc8d9b1c5158b2afab4696bbd1ed255691df86 /src/test | |
parent | 28c6e8d71b3ad84b635bf766e0a82799a58709dd (diff) |
tests: fix spurious addrman test failure
When inserting two addresses of the same class, from the same source, they have
a 1/64 chance of colliding.
Diffstat (limited to 'src/test')
-rw-r--r-- | src/test/addrman_tests.cpp | 10 |
1 files changed, 7 insertions, 3 deletions
diff --git a/src/test/addrman_tests.cpp b/src/test/addrman_tests.cpp index 3812490ec0..dc5372a070 100644 --- a/src/test/addrman_tests.cpp +++ b/src/test/addrman_tests.cpp @@ -104,10 +104,14 @@ BOOST_AUTO_TEST_CASE(addrman_simple) // Test: New table has one addr and we add a diff addr we should - // have two addrs. + // have at least one addr. + // Note that addrman's size cannot be tested reliably after insertion, as + // hash collisions may occur. But we can always be sure of at least one + // success. + CService addr2 = ResolveService("250.1.1.2", 8333); BOOST_CHECK(addrman.Add(CAddress(addr2, NODE_NONE), source)); - BOOST_CHECK_EQUAL(addrman.size(), 2); + BOOST_CHECK(addrman.size() >= 1); // Test: AddrMan::Clear() should empty the new table. addrman.Clear(); @@ -120,7 +124,7 @@ BOOST_AUTO_TEST_CASE(addrman_simple) vAddr.push_back(CAddress(ResolveService("250.1.1.3", 8333), NODE_NONE)); vAddr.push_back(CAddress(ResolveService("250.1.1.4", 8333), NODE_NONE)); BOOST_CHECK(addrman.Add(vAddr, source)); - BOOST_CHECK_EQUAL(addrman.size(), 2); + BOOST_CHECK(addrman.size() >= 1); } BOOST_AUTO_TEST_CASE(addrman_ports) |