xrpld
Loading...
Searching...
No Matches
xrpl::test::LedgerReplayClient Class Reference

Ledger replay client side. More...

Collaboration diagram for xrpl::test::LedgerReplayClient:

Public Member Functions

 LedgerReplayClient (beast::unit_test::Suite &suite, LedgerServer &server, PeerSetBehavior behavior=PeerSetBehavior::Good, InboundLedgersBehavior inboundBhvr=InboundLedgersBehavior::Good, PeerFeature peerFeature=PeerFeature::LedgerReplayEnabled)
void addLedger (std::shared_ptr< Ledger const > const &l)
bool haveLedgers (uint256 const &finishLedgerHash, int totalReplay)
bool waitForLedgers (uint256 const &finishLedgerHash, int totalReplay)
bool waitForDone ()
std::vector< std::shared_ptr< LedgerReplayTask > > getTasks ()
std::shared_ptr< LedgerReplayTaskfindTask (uint256 const &hash, int totalReplay)
std::size_t countDeltas ()
std::size_t countSkipLists ()
bool countsAsExpected (std::size_t tasks, std::size_t skipLists, std::size_t deltas)
std::shared_ptr< SkipListAcquirefindSkipListAcquire (uint256 const &hash)
std::shared_ptr< LedgerDeltaAcquirefindLedgerDeltaAcquire (uint256 const &hash)
template<typename T>
TaskStatus taskStatus (std::shared_ptr< T > const &t)
bool asExpected (std::shared_ptr< LedgerReplayTask > const &task, TaskStatus taskExpect, TaskStatus skiplistExpect, std::vector< TaskStatus > const &deltaExpects)
bool asExpected (uint256 const &hash, int totalReplay, TaskStatus taskExpect, TaskStatus skiplistExpect, std::vector< TaskStatus > const &deltaExpects)
bool checkStatus (uint256 const &hash, int totalReplay, TaskStatus taskExpect, TaskStatus skiplistExpect, std::vector< TaskStatus > const &deltaExpects)
bool waitAndCheckStatus (uint256 const &hash, int totalReplay, TaskStatus taskExpect, TaskStatus skiplistExpect, std::vector< TaskStatus > const &deltaExpects)

Public Attributes

jtx::Env env
Applicationapp
LedgerMasterledgerMaster
MagicInboundLedgers inboundLedgers
LedgerReplayMsgHandler serverMsgHandler
LedgerReplayMsgHandler clientMsgHandler
LedgerReplayer replayer

Detailed Description

Ledger replay client side.

It creates the LedgerReplayer which has the client side logic. The client side and server side message handlers are connect via the peerSet to pass the requests and responses. It also has utility functions for checking task status

Definition at line 605 of file LedgerReplay_test.cpp.

Constructor & Destructor Documentation

◆ LedgerReplayClient()

xrpl::test::LedgerReplayClient::LedgerReplayClient ( beast::unit_test::Suite & suite,
LedgerServer & server,
PeerSetBehavior behavior = PeerSetBehavior::Good,
InboundLedgersBehavior inboundBhvr = InboundLedgersBehavior::Good,
PeerFeature peerFeature = PeerFeature::LedgerReplayEnabled )

Definition at line 608 of file LedgerReplay_test.cpp.

Member Function Documentation

◆ addLedger()

void xrpl::test::LedgerReplayClient::addLedger ( std::shared_ptr< Ledger const > const & l)

Definition at line 632 of file LedgerReplay_test.cpp.

◆ haveLedgers()

bool xrpl::test::LedgerReplayClient::haveLedgers ( uint256 const & finishLedgerHash,
int totalReplay )

Definition at line 638 of file LedgerReplay_test.cpp.

◆ waitForLedgers()

bool xrpl::test::LedgerReplayClient::waitForLedgers ( uint256 const & finishLedgerHash,
int totalReplay )

Definition at line 653 of file LedgerReplay_test.cpp.

◆ waitForDone()

bool xrpl::test::LedgerReplayClient::waitForDone ( )

Definition at line 667 of file LedgerReplay_test.cpp.

◆ getTasks()

std::vector< std::shared_ptr< LedgerReplayTask > > xrpl::test::LedgerReplayClient::getTasks ( )

Definition at line 693 of file LedgerReplay_test.cpp.

◆ findTask()

std::shared_ptr< LedgerReplayTask > xrpl::test::LedgerReplayClient::findTask ( uint256 const & hash,
int totalReplay )

Definition at line 700 of file LedgerReplay_test.cpp.

◆ countDeltas()

std::size_t xrpl::test::LedgerReplayClient::countDeltas ( )

Definition at line 712 of file LedgerReplay_test.cpp.

◆ countSkipLists()

std::size_t xrpl::test::LedgerReplayClient::countSkipLists ( )

Definition at line 719 of file LedgerReplay_test.cpp.

◆ countsAsExpected()

bool xrpl::test::LedgerReplayClient::countsAsExpected ( std::size_t tasks,
std::size_t skipLists,
std::size_t deltas )

Definition at line 726 of file LedgerReplay_test.cpp.

◆ findSkipListAcquire()

std::shared_ptr< SkipListAcquire > xrpl::test::LedgerReplayClient::findSkipListAcquire ( uint256 const & hash)

Definition at line 734 of file LedgerReplay_test.cpp.

◆ findLedgerDeltaAcquire()

std::shared_ptr< LedgerDeltaAcquire > xrpl::test::LedgerReplayClient::findLedgerDeltaAcquire ( uint256 const & hash)

Definition at line 744 of file LedgerReplay_test.cpp.

◆ taskStatus()

template<typename T>
TaskStatus xrpl::test::LedgerReplayClient::taskStatus ( std::shared_ptr< T > const & t)

Definition at line 755 of file LedgerReplay_test.cpp.

◆ asExpected() [1/2]

bool xrpl::test::LedgerReplayClient::asExpected ( std::shared_ptr< LedgerReplayTask > const & task,
TaskStatus taskExpect,
TaskStatus skiplistExpect,
std::vector< TaskStatus > const & deltaExpects )

Definition at line 765 of file LedgerReplay_test.cpp.

◆ asExpected() [2/2]

bool xrpl::test::LedgerReplayClient::asExpected ( uint256 const & hash,
int totalReplay,
TaskStatus taskExpect,
TaskStatus skiplistExpect,
std::vector< TaskStatus > const & deltaExpects )

Definition at line 790 of file LedgerReplay_test.cpp.

◆ checkStatus()

bool xrpl::test::LedgerReplayClient::checkStatus ( uint256 const & hash,
int totalReplay,
TaskStatus taskExpect,
TaskStatus skiplistExpect,
std::vector< TaskStatus > const & deltaExpects )

Definition at line 807 of file LedgerReplay_test.cpp.

◆ waitAndCheckStatus()

bool xrpl::test::LedgerReplayClient::waitAndCheckStatus ( uint256 const & hash,
int totalReplay,
TaskStatus taskExpect,
TaskStatus skiplistExpect,
std::vector< TaskStatus > const & deltaExpects )

Definition at line 824 of file LedgerReplay_test.cpp.

Member Data Documentation

◆ env

jtx::Env xrpl::test::LedgerReplayClient::env

Definition at line 837 of file LedgerReplay_test.cpp.

◆ app

Application& xrpl::test::LedgerReplayClient::app

Definition at line 838 of file LedgerReplay_test.cpp.

◆ ledgerMaster

LedgerMaster& xrpl::test::LedgerReplayClient::ledgerMaster

Definition at line 839 of file LedgerReplay_test.cpp.

◆ inboundLedgers

MagicInboundLedgers xrpl::test::LedgerReplayClient::inboundLedgers

Definition at line 840 of file LedgerReplay_test.cpp.

◆ serverMsgHandler

LedgerReplayMsgHandler xrpl::test::LedgerReplayClient::serverMsgHandler

Definition at line 841 of file LedgerReplay_test.cpp.

◆ clientMsgHandler

LedgerReplayMsgHandler xrpl::test::LedgerReplayClient::clientMsgHandler

Definition at line 842 of file LedgerReplay_test.cpp.

◆ replayer

LedgerReplayer xrpl::test::LedgerReplayClient::replayer

Definition at line 843 of file LedgerReplay_test.cpp.