rippled
Loading...
Searching...
No Matches
Classes | Public Member Functions | Static Public Member Functions | Public Attributes | Private Member Functions | Static Private Member Functions | Private Attributes | List of all members
xrpl::test::LedgerEntry_test Class Reference
Inheritance diagram for xrpl::test::LedgerEntry_test:
Inheritance graph
[legend]
Collaboration diagram for xrpl::test::LedgerEntry_test:
Collaboration graph
[legend]

Classes

struct  Subfield
 

Public Member Functions

void run () override
 Runs the suite.
 
template<class = void>
void operator() (runner &r)
 Invokes the test using the specified runner.
 
template<class = void>
void pass ()
 Record a successful test condition.
 
template<class F , class String >
bool except (F &&f, String const &reason)
 
template<class F >
bool except (F &&f)
 
template<class E , class F , class String >
bool except (F &&f, String const &reason)
 
template<class E , class F >
bool except (F &&f)
 
template<class F , class String >
bool unexcept (F &&f, String const &reason)
 
template<class F >
bool unexcept (F &&f)
 
std::string const & arg () const
 Return the argument associated with the runner.
 
template<class Condition , class String >
bool unexpected (Condition shouldBeFalse, String const &reason)
 
template<class Condition >
bool unexpected (Condition shouldBeFalse)
 
template<class String >
void fail (String const &reason, char const *file, int line)
 Record a failure.
 
template<class = void>
void fail (std::string const &reason="")
 
template<class Condition >
bool expect (Condition const &shouldBeTrue)
 Evaluate a test condition.
 
template<class Condition , class String >
bool expect (Condition const &shouldBeTrue, String const &reason)
 
template<class Condition >
bool expect (Condition const &shouldBeTrue, char const *file, int line)
 
template<class Condition , class String >
bool expect (Condition const &shouldBeTrue, String const &reason, char const *file, int line)
 

Static Public Member Functions

static suitethis_suite ()
 Returns the "current" running suite.
 

Public Attributes

log_os< char > log
 Logging output stream.
 
testcase_t testcase
 Memberspace for declaring test cases.
 

Private Member Functions

void checkErrorValue (Json::Value const &jv, std::string const &err, std::string const &msg, std::source_location const location=std::source_location::current())
 
void testMalformedField (test::jtx::Env &env, Json::Value correctRequest, Json::StaticString const fieldName, FieldType const typeID, std::string const &expectedError, bool required=true, std::source_location const location=std::source_location::current())
 
void testMalformedSubfield (test::jtx::Env &env, Json::Value correctRequest, Json::StaticString parentFieldName, Json::StaticString fieldName, FieldType typeID, std::string const &expectedError, bool required=true, std::source_location const location=std::source_location::current())
 
void runLedgerEntryTest (test::jtx::Env &env, Json::StaticString const &parentField, std::source_location const location=std::source_location::current())
 
void runLedgerEntryTest (test::jtx::Env &env, Json::StaticString const &parentField, std::vector< Subfield > const &subfields, std::source_location const location=std::source_location::current())
 
void testInvalid ()
 
void testAccountRoot ()
 
void testAmendments ()
 
void testAMM ()
 
void testCheck ()
 
void testCredentials ()
 
void testDelegate ()
 
void testDepositPreauth ()
 
void testDepositPreauthCred ()
 
void testDirectory ()
 
void testEscrow ()
 
void testFeeSettings ()
 
void testLedgerHashes ()
 
void testNFTokenOffer ()
 
void testNFTokenPage ()
 
void testNegativeUNL ()
 
void testOffer ()
 
void testPayChan ()
 
void testRippleState ()
 
void testSignerList ()
 
void testTicket ()
 
void testDID ()
 
void testInvalidOracleLedgerEntry ()
 
void testOracleLedgerEntry ()
 
void testMPT ()
 
void testPermissionedDomain ()
 
void testFixed ()
 Test the ledger entry types that don't take parameters.
 
void testHashes ()
 
void testCLI ()
 
void propagate_abort ()
 

Static Private Member Functions

static std::vector< Json::ValuegetBadValues (FieldType fieldType)
 
static Json::Value getCorrectValue (Json::StaticString fieldName)
 
static suite ** p_this_suite ()
 

Private Attributes

bool abort_ = false
 
bool aborted_ = false
 
runner * runner_ = nullptr
 

Detailed Description

Definition at line 99 of file LedgerEntry_test.cpp.

Member Function Documentation

◆ checkErrorValue()

void xrpl::test::LedgerEntry_test::checkErrorValue ( Json::Value const &  jv,
std::string const &  err,
std::string const &  msg,
std::source_location const  location = std::source_location::current() 
)
private

Definition at line 102 of file LedgerEntry_test.cpp.

◆ getBadValues()

static std::vector< Json::Value > xrpl::test::LedgerEntry_test::getBadValues ( FieldType  fieldType)
staticprivate

Definition at line 135 of file LedgerEntry_test.cpp.

◆ getCorrectValue()

static Json::Value xrpl::test::LedgerEntry_test::getCorrectValue ( Json::StaticString  fieldName)
staticprivate

Definition at line 229 of file LedgerEntry_test.cpp.

◆ testMalformedField()

void xrpl::test::LedgerEntry_test::testMalformedField ( test::jtx::Env env,
Json::Value  correctRequest,
Json::StaticString const  fieldName,
FieldType const  typeID,
std::string const &  expectedError,
bool  required = true,
std::source_location const  location = std::source_location::current() 
)
private

Definition at line 275 of file LedgerEntry_test.cpp.

◆ testMalformedSubfield()

void xrpl::test::LedgerEntry_test::testMalformedSubfield ( test::jtx::Env env,
Json::Value  correctRequest,
Json::StaticString  parentFieldName,
Json::StaticString  fieldName,
FieldType  typeID,
std::string const &  expectedError,
bool  required = true,
std::source_location const  location = std::source_location::current() 
)
private

Definition at line 322 of file LedgerEntry_test.cpp.

◆ runLedgerEntryTest() [1/2]

void xrpl::test::LedgerEntry_test::runLedgerEntryTest ( test::jtx::Env env,
Json::StaticString const &  parentField,
std::source_location const  location = std::source_location::current() 
)
private

Definition at line 375 of file LedgerEntry_test.cpp.

◆ runLedgerEntryTest() [2/2]

void xrpl::test::LedgerEntry_test::runLedgerEntryTest ( test::jtx::Env env,
Json::StaticString const &  parentField,
std::vector< Subfield > const &  subfields,
std::source_location const  location = std::source_location::current() 
)
private

Definition at line 398 of file LedgerEntry_test.cpp.

◆ testInvalid()

void xrpl::test::LedgerEntry_test::testInvalid ( )
private

Definition at line 436 of file LedgerEntry_test.cpp.

◆ testAccountRoot()

void xrpl::test::LedgerEntry_test::testAccountRoot ( )
private

Definition at line 512 of file LedgerEntry_test.cpp.

◆ testAmendments()

void xrpl::test::LedgerEntry_test::testAmendments ( )
private

Definition at line 614 of file LedgerEntry_test.cpp.

◆ testAMM()

void xrpl::test::LedgerEntry_test::testAMM ( )
private

Definition at line 692 of file LedgerEntry_test.cpp.

◆ testCheck()

void xrpl::test::LedgerEntry_test::testCheck ( )
private

Definition at line 752 of file LedgerEntry_test.cpp.

◆ testCredentials()

void xrpl::test::LedgerEntry_test::testCredentials ( )
private

Definition at line 802 of file LedgerEntry_test.cpp.

◆ testDelegate()

void xrpl::test::LedgerEntry_test::testDelegate ( )
private

Definition at line 863 of file LedgerEntry_test.cpp.

◆ testDepositPreauth()

void xrpl::test::LedgerEntry_test::testDepositPreauth ( )
private

Definition at line 916 of file LedgerEntry_test.cpp.

◆ testDepositPreauthCred()

void xrpl::test::LedgerEntry_test::testDepositPreauthCred ( )
private

Definition at line 973 of file LedgerEntry_test.cpp.

◆ testDirectory()

void xrpl::test::LedgerEntry_test::testDirectory ( )
private

Definition at line 1215 of file LedgerEntry_test.cpp.

◆ testEscrow()

void xrpl::test::LedgerEntry_test::testEscrow ( )
private

Definition at line 1361 of file LedgerEntry_test.cpp.

◆ testFeeSettings()

void xrpl::test::LedgerEntry_test::testFeeSettings ( )
private

Definition at line 1418 of file LedgerEntry_test.cpp.

◆ testLedgerHashes()

void xrpl::test::LedgerEntry_test::testLedgerHashes ( )
private

Definition at line 1440 of file LedgerEntry_test.cpp.

◆ testNFTokenOffer()

void xrpl::test::LedgerEntry_test::testNFTokenOffer ( )
private

Definition at line 1462 of file LedgerEntry_test.cpp.

◆ testNFTokenPage()

void xrpl::test::LedgerEntry_test::testNFTokenPage ( )
private

Definition at line 1497 of file LedgerEntry_test.cpp.

◆ testNegativeUNL()

void xrpl::test::LedgerEntry_test::testNegativeUNL ( )
private

Definition at line 1526 of file LedgerEntry_test.cpp.

◆ testOffer()

void xrpl::test::LedgerEntry_test::testOffer ( )
private

Definition at line 1580 of file LedgerEntry_test.cpp.

◆ testPayChan()

void xrpl::test::LedgerEntry_test::testPayChan ( )
private

Definition at line 1627 of file LedgerEntry_test.cpp.

◆ testRippleState()

void xrpl::test::LedgerEntry_test::testRippleState ( )
private

Definition at line 1688 of file LedgerEntry_test.cpp.

◆ testSignerList()

void xrpl::test::LedgerEntry_test::testSignerList ( )
private

Definition at line 1827 of file LedgerEntry_test.cpp.

◆ testTicket()

void xrpl::test::LedgerEntry_test::testTicket ( )
private

Definition at line 1836 of file LedgerEntry_test.cpp.

◆ testDID()

void xrpl::test::LedgerEntry_test::testDID ( )
private

Definition at line 1917 of file LedgerEntry_test.cpp.

◆ testInvalidOracleLedgerEntry()

void xrpl::test::LedgerEntry_test::testInvalidOracleLedgerEntry ( )
private

Definition at line 1971 of file LedgerEntry_test.cpp.

◆ testOracleLedgerEntry()

void xrpl::test::LedgerEntry_test::testOracleLedgerEntry ( )
private

Definition at line 1996 of file LedgerEntry_test.cpp.

◆ testMPT()

void xrpl::test::LedgerEntry_test::testMPT ( )
private

Definition at line 2040 of file LedgerEntry_test.cpp.

◆ testPermissionedDomain()

void xrpl::test::LedgerEntry_test::testPermissionedDomain ( )
private

Definition at line 2112 of file LedgerEntry_test.cpp.

◆ testFixed()

void xrpl::test::LedgerEntry_test::testFixed ( )
private

Test the ledger entry types that don't take parameters.

Verifies that the RPC result has the expected data

Parameters
goodIndicates that the request should have succeeded and returned a ledger object of expectedType type.
jvThe RPC result Json value
expectedTypeThe type that the ledger object should have if "good".
expectedErrorOptional. The expected error if not good. Defaults to "entryNotFound".

Runs a series of tests for a given fixed-position ledger entry.

Parameters
fieldThe Json request field to use.
expectedTypeThe type that the ledger object should have if "good".
expectedKeyThe keylet of the fixed object.
goodIndicates whether the object is expected to exist.

Definition at line 2184 of file LedgerEntry_test.cpp.

◆ testHashes()

void xrpl::test::LedgerEntry_test::testHashes ( )
private

Verifies that the RPC result has the expected data

Parameters
goodIndicates that the request should have succeeded and returned a ledger object of expectedType type.
jvThe RPC result Json value
expectedCountThe number of Hashes expected in the object if "good".
expectedErrorOptional. The expected error if not good. Defaults to "entryNotFound".

Runs a series of tests for a given ledger index.

Parameters
ledgerThe ledger index value of the "hashes" request parameter. May not necessarily be a number.
expectedKeyThe expected keylet of the object.
goodIndicates whether the object is expected to exist.
expectedCountThe number of Hashes expected in the object if "good".

Definition at line 2377 of file LedgerEntry_test.cpp.

◆ testCLI()

void xrpl::test::LedgerEntry_test::testCLI ( )
private

Definition at line 2581 of file LedgerEntry_test.cpp.

◆ run()

void xrpl::test::LedgerEntry_test::run ( )
overridevirtual

Runs the suite.

Implements beast::unit_test::suite.

Definition at line 2604 of file LedgerEntry_test.cpp.

◆ this_suite()

static suite * beast::unit_test::suite::this_suite ( )
staticinherited

Returns the "current" running suite.

If no suite is running, nullptr is returned.

Definition at line 156 of file suite.h.

◆ operator()()

template<class >
void beast::unit_test::suite::operator() ( runner r)
inherited

Invokes the test using the specified runner.

Data members are set up here instead of the constructor as a convenience to writing the derived class to avoid repetition of forwarded constructor arguments to the base. Normally this is called by the framework for you.

Definition at line 389 of file suite.h.

◆ pass()

template<class >
void beast::unit_test::suite::pass ( )
inherited

Record a successful test condition.

Definition at line 497 of file suite.h.

◆ fail() [1/2]

template<class String >
void beast::unit_test::suite::fail ( String const &  reason,
char const *  file,
int  line 
)
inherited

Record a failure.

Parameters
reasonOptional text added to the output on a failure.
fileThe source code file where the test failed.
lineThe source code line number where the test failed.

Definition at line 519 of file suite.h.

◆ fail() [2/2]

template<class >
void beast::unit_test::suite::fail ( std::string const &  reason = "")
inherited

Definition at line 506 of file suite.h.

◆ expect() [1/4]

template<class Condition >
bool beast::unit_test::suite::expect ( Condition const &  shouldBeTrue)
inherited

Evaluate a test condition.

This function provides improved logging by incorporating the file name and line number into the reported output on failure, as well as additional text specified by the caller.

Parameters
shouldBeTrueThe condition to test. The condition is evaluated in a boolean context.
reasonOptional added text to output on a failure.
fileThe source code file where the test failed.
lineThe source code line number where the test failed.
Returns
true if the test condition indicates success.

Definition at line 224 of file suite.h.

◆ expect() [2/4]

template<class Condition , class String >
bool beast::unit_test::suite::expect ( Condition const &  shouldBeTrue,
String const &  reason 
)
inherited

Definition at line 406 of file suite.h.

◆ expect() [3/4]

template<class Condition >
bool beast::unit_test::suite::expect ( Condition const &  shouldBeTrue,
char const *  file,
int  line 
)
inherited

Definition at line 235 of file suite.h.

◆ expect() [4/4]

template<class Condition , class String >
bool beast::unit_test::suite::expect ( Condition const &  shouldBeTrue,
String const &  reason,
char const *  file,
int  line 
)
inherited

Definition at line 419 of file suite.h.

◆ except() [1/4]

template<class F , class String >
bool beast::unit_test::suite::except ( F &&  f,
String const &  reason 
)
inherited

Definition at line 434 of file suite.h.

◆ except() [2/4]

template<class F >
bool beast::unit_test::suite::except ( F &&  f)
inherited

Definition at line 254 of file suite.h.

◆ except() [3/4]

template<class E , class F , class String >
bool beast::unit_test::suite::except ( F &&  f,
String const &  reason 
)
inherited

Definition at line 451 of file suite.h.

◆ except() [4/4]

template<class E , class F >
bool beast::unit_test::suite::except ( F &&  f)
inherited

Definition at line 263 of file suite.h.

◆ unexcept() [1/2]

template<class F , class String >
bool beast::unit_test::suite::unexcept ( F &&  f,
String const &  reason 
)
inherited

Definition at line 468 of file suite.h.

◆ unexcept() [2/2]

template<class F >
bool beast::unit_test::suite::unexcept ( F &&  f)
inherited

Definition at line 272 of file suite.h.

◆ arg()

std::string const & beast::unit_test::suite::arg ( ) const
inherited

Return the argument associated with the runner.

Definition at line 279 of file suite.h.

◆ unexpected() [1/2]

template<class Condition , class String >
bool beast::unit_test::suite::unexpected ( Condition  shouldBeFalse,
String const &  reason 
)
inherited

Definition at line 485 of file suite.h.

◆ unexpected() [2/2]

template<class Condition >
bool beast::unit_test::suite::unexpected ( Condition  shouldBeFalse)
inherited

Definition at line 292 of file suite.h.

◆ p_this_suite()

static suite ** beast::unit_test::suite::p_this_suite ( )
staticprivateinherited

Definition at line 301 of file suite.h.

◆ propagate_abort()

void beast::unit_test::suite::propagate_abort ( )
privateinherited

Definition at line 525 of file suite.h.

Member Data Documentation

◆ abort_

bool beast::unit_test::suite::abort_ = false
privateinherited

Definition at line 53 of file suite.h.

◆ aborted_

bool beast::unit_test::suite::aborted_ = false
privateinherited

Definition at line 54 of file suite.h.

◆ runner_

runner* beast::unit_test::suite::runner_ = nullptr
privateinherited

Definition at line 55 of file suite.h.

◆ log

log_os<char> beast::unit_test::suite::log
inherited

Logging output stream.

Text sent to the log output stream will be forwarded to the output stream associated with the runner.

Definition at line 147 of file suite.h.

◆ testcase

testcase_t beast::unit_test::suite::testcase
inherited

Memberspace for declaring test cases.

Definition at line 150 of file suite.h.