7#include <boost/test/unit_test.hpp>
11BOOST_AUTO_TEST_SUITE(coinscachepair_tests)
17 std::list<CoinsCachePair> nodes;
21 auto node{std::prev(nodes.end())};
40 sentinel.second.SelfRef(sentinel);
44 auto node{sentinel.second.Next()};
45 for (
const auto& expected : nodes) {
53 node = sentinel.second.Next();
54 for (
const auto& expected : nodes) {
56 auto next =
node->second.Next();
57 node->second.SetClean();
66 for (
auto it{nodes.begin()}; it != nodes.end(); it = nodes.erase(it)) {
75 sentinel.second.SelfRef(sentinel);
81 auto node{sentinel.second.Next()};
82 for (
auto expected{nodes.begin()}; expected != nodes.end(); expected = nodes.erase(expected)) {
96 sentinel.second.SelfRef(sentinel);
100 auto n1{nodes.begin()};
101 auto n2{std::next(n1)};
102 auto n3{std::next(n2)};
103 auto n4{std::next(n3)};
151 sentinel.second.SelfRef(sentinel);
183 n1.second.SetClean();
192 n1.second.SetClean();
std::pair< const COutPoint, CCoinsCacheEntry > CoinsCachePair
BOOST_AUTO_TEST_CASE(linked_list_iteration)
static constexpr auto NUM_NODES
std::list< CoinsCachePair > CreatePairs(CoinsCachePair &sentinel)
BOOST_AUTO_TEST_SUITE_END()
BOOST_CHECK_EQUAL(headers.FindFirst("key"), "value")
#define BOOST_CHECK(expr)
static void SetFresh(CoinsCachePair &pair, CoinsCachePair &sentinel) noexcept
static void SetDirty(CoinsCachePair &pair, CoinsCachePair &sentinel) noexcept