1#include <test/shamap/common.h> 
    2#include <test/unit_test/SuiteJournal.h> 
    4#include <xrpl/basics/UnorderedContainers.h> 
    5#include <xrpl/basics/contract.h> 
    6#include <xrpl/basics/random.h> 
    7#include <xrpl/beast/unit_test.h> 
    8#include <xrpl/beast/xor_shift_engine.h> 
    9#include <xrpl/protocol/digest.h> 
   10#include <xrpl/shamap/SHAMap.h> 
   11#include <xrpl/shamap/SHAMapSyncFilter.h> 
   33            Throw<std::runtime_error>(
"missing node");
 
 
 
   57            Map::iterator it = 
mMap.
find(nodeHash);
 
 
 
   70    boost::intrusive_ptr<Item>
 
   74        for (
int d = 0; d < 3; ++d)
 
   75            s.
add32(ripple::rand_int<std::uint32_t>(r));
 
 
 
  154BEAST_DEFINE_TESTSUITE(FetchPack, shamap, 
ripple);
 
A generic endpoint for log messages.
 
void pass()
Record a successful test condition.
 
uint256 const & as_uint256() const
 
A SHAMap is both a radix tree with a fan-out of 16 and a Merkle tree.
 
bool addItem(SHAMapNodeType type, boost::intrusive_ptr< SHAMapItem const > item)
 
Slice slice() const noexcept
 
uint256 getSHA512Half() const
 
void add_random_items(std::size_t n, Table &t, beast::xor_shift_engine &r)
 
boost::intrusive_ptr< Item > make_random_item(beast::xor_shift_engine &r)
 
void on_fetch(Map &map, SHAMapHash const &hash, Blob const &blob)
 
void run() override
Runs the suite.
 
A namespace for easy access to logging severity values.
 
Use hash_* containers for keys that do not need a cryptographically secure hashing algorithm.
 
std::enable_if_t< std::is_same< T, char >::value||std::is_same< T, unsigned char >::value, Slice > makeSlice(std::array< T, N > const &a)
 
boost::intrusive_ptr< SHAMapItem > make_shamapitem(uint256 const &tag, Slice data)
 
sha512_half_hasher::result_type sha512Half(Args const &... args)
Returns the SHA512-Half of a series of objects.
 
void operator()(std::uint32_t refNum) const
 
std::optional< Blob > getNode(SHAMapHash const &nodeHash) const override
 
TestFilter(Map &map, beast::Journal journal)
 
void gotNode(bool fromFilter, SHAMapHash const &nodeHash, std::uint32_t ledgerSeq, Blob &&nodeData, SHAMapNodeType type) const override