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< LedgerReplayTask > findTask (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< SkipListAcquire > findSkipListAcquire (UInt256 const &hash)
std::shared_ptr< LedgerDeltaAcquire > findLedgerDeltaAcquire (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
Application & app
LedgerMaster & ledgerMaster
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 541 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 544 of file LedgerReplay_test.cpp.

Member Function Documentation

◆ addLedger()

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

Definition at line 568 of file LedgerReplay_test.cpp.

◆ haveLedgers()

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

Definition at line 574 of file LedgerReplay_test.cpp.

◆ waitForLedgers()

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

Definition at line 589 of file LedgerReplay_test.cpp.

◆ waitForDone()

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

Definition at line 603 of file LedgerReplay_test.cpp.

◆ getTasks()

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

Definition at line 629 of file LedgerReplay_test.cpp.

◆ findTask()

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

Definition at line 636 of file LedgerReplay_test.cpp.

◆ countDeltas()

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

Definition at line 648 of file LedgerReplay_test.cpp.

◆ countSkipLists()

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

Definition at line 655 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 662 of file LedgerReplay_test.cpp.

◆ findSkipListAcquire()

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

Definition at line 670 of file LedgerReplay_test.cpp.

◆ findLedgerDeltaAcquire()

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

Definition at line 680 of file LedgerReplay_test.cpp.

◆ taskStatus()

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

Definition at line 691 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 701 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 726 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 743 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 760 of file LedgerReplay_test.cpp.

Member Data Documentation

◆ env

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

Definition at line 773 of file LedgerReplay_test.cpp.

◆ app

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

Definition at line 774 of file LedgerReplay_test.cpp.

◆ ledgerMaster

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

Definition at line 775 of file LedgerReplay_test.cpp.

◆ inboundLedgers

MagicInboundLedgers xrpl::test::LedgerReplayClient::inboundLedgers

Definition at line 776 of file LedgerReplay_test.cpp.

◆ serverMsgHandler

LedgerReplayMsgHandler xrpl::test::LedgerReplayClient::serverMsgHandler

Definition at line 777 of file LedgerReplay_test.cpp.

◆ clientMsgHandler

LedgerReplayMsgHandler xrpl::test::LedgerReplayClient::clientMsgHandler

Definition at line 778 of file LedgerReplay_test.cpp.

◆ replayer

LedgerReplayer xrpl::test::LedgerReplayClient::replayer

Definition at line 779 of file LedgerReplay_test.cpp.