MCPcopy Create free account
hub / github.com/ElementsProject/elements / BOOST_AUTO_TEST_CASE

Function BOOST_AUTO_TEST_CASE

src/test/banman_tests.cpp:18–41  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

16BOOST_FIXTURE_TEST_SUITE(banman_tests, BasicTestingSetup)
17
18BOOST_AUTO_TEST_CASE(file)
19{
20 SetMockTime(777s);
21 const fs::path banlist_path{m_args.GetDataDirBase() / "banlist_test"};
22 {
23 const std::string entries_write{
24 "{ \"banned_nets\": ["
25 " { \"version\": 1, \"ban_created\": 0, \"banned_until\": 778, \"address\": \"aaaaaaaaa\" },"
26 " { \"version\": 2, \"ban_created\": 0, \"banned_until\": 778, \"address\": \"bbbbbbbbb\" },"
27 " { \"version\": 1, \"ban_created\": 0, \"banned_until\": 778, \"address\": \"1.0.0.0/8\" }"
28 "] }",
29 };
30 assert(WriteBinaryFile(banlist_path + ".json", entries_write));
31 {
32 // The invalid entries will be dropped, but the valid one remains
33 ASSERT_DEBUG_LOG("Dropping entry with unparseable address or subnet (aaaaaaaaa) from ban list");
34 ASSERT_DEBUG_LOG("Dropping entry with unknown version (2) from ban list");
35 BanMan banman{banlist_path, /*client_interface=*/nullptr, /*default_ban_time=*/0};
36 banmap_t entries_read;
37 banman.GetBanned(entries_read);
38 assert(entries_read.size() == 1);
39 }
40 }
41}
42
43BOOST_AUTO_TEST_SUITE_END()

Callers

nothing calls this directly

Calls 4

SetMockTimeFunction · 0.85
WriteBinaryFileFunction · 0.85
GetBannedMethod · 0.80
sizeMethod · 0.45

Tested by

no test coverage detected