1#include <xrpl/beast/unit_test/suite.h>
2#include <xrpl/protocol/LedgerFormats.h>
3#include <xrpl/protocol/Permissions.h>
4#include <xrpl/protocol/SField.h>
5#include <xrpl/protocol/STInteger.h>
6#include <xrpl/protocol/TxFormats.h>
17 BEAST_EXPECT(u8.
value() == 255);
18 BEAST_EXPECT(u8.
getText() ==
"255");
19 BEAST_EXPECT(u8.
getSType() == STI_UINT8);
23 STUInt8 const tr(sfTransactionResult, 0);
24 BEAST_EXPECT(tr.
value() == 0);
26 tr.
getText() ==
"The transaction was applied. Only final in a validated ledger.");
27 BEAST_EXPECT(tr.
getSType() == STI_UINT8);
31 STUInt8 const tr2(sfTransactionResult, 255);
32 BEAST_EXPECT(tr2.
value() == 255);
33 BEAST_EXPECT(tr2.
getText() ==
"255");
34 BEAST_EXPECT(tr2.
getSType() == STI_UINT8);
43 BEAST_EXPECT(u16.
value() == 65535);
44 BEAST_EXPECT(u16.
getText() ==
"65535");
45 BEAST_EXPECT(u16.
getSType() == STI_UINT16);
49 STUInt16 const let(sfLedgerEntryType, ltACCOUNT_ROOT);
50 BEAST_EXPECT(let.
value() == ltACCOUNT_ROOT);
51 BEAST_EXPECT(let.
getText() ==
"AccountRoot");
52 BEAST_EXPECT(let.
getSType() == STI_UINT16);
56 STUInt16 const tlt(sfTransactionType, ttPAYMENT);
57 BEAST_EXPECT(tlt.
value() == ttPAYMENT);
58 BEAST_EXPECT(tlt.
getText() ==
"Payment");
59 BEAST_EXPECT(tlt.
getSType() == STI_UINT16);
68 BEAST_EXPECT(u32.
value() == 4'294'967'295u);
69 BEAST_EXPECT(u32.
getText() ==
"4294967295");
70 BEAST_EXPECT(u32.
getSType() == STI_UINT32);
74 STUInt32 const pv(sfPermissionValue, ttPAYMENT + 1);
75 BEAST_EXPECT(pv.
value() == ttPAYMENT + 1);
76 BEAST_EXPECT(pv.
getText() ==
"Payment");
77 BEAST_EXPECT(pv.
getSType() == STI_UINT32);
79 STUInt32 const pv2(sfPermissionValue, PaymentMint);
80 BEAST_EXPECT(pv2.
value() == PaymentMint);
81 BEAST_EXPECT(pv2.
getText() ==
"PaymentMint");
82 BEAST_EXPECT(pv2.
getSType() == STI_UINT32);
90 STUInt64 const u64(0xFFFFFFFFFFFFFFFFull);
91 BEAST_EXPECT(u64.
value() == 0xFFFFFFFFFFFFFFFFull);
92 BEAST_EXPECT(u64.
getText() ==
"18446744073709551615");
93 BEAST_EXPECT(u64.
getSType() == STI_UINT64);
97 BEAST_EXPECT(jsonVal.isString());
98 BEAST_EXPECT(jsonVal.asString() ==
"ffffffffffffffff");
100 STUInt64 const u642(sfMaximumAmount, 0xFFFFFFFFFFFFFFFFull);
101 BEAST_EXPECT(u642.
value() == 0xFFFFFFFFFFFFFFFFull);
102 BEAST_EXPECT(u642.
getText() ==
"18446744073709551615");
103 BEAST_EXPECT(u642.
getSType() == STI_UINT64);
112 int const minInt32 = -2147483648;
114 BEAST_EXPECT(i32.
value() == minInt32);
115 BEAST_EXPECT(i32.
getText() ==
"-2147483648");
116 BEAST_EXPECT(i32.
getSType() == STI_INT32);
121 int const maxInt32 = 2147483647;
123 BEAST_EXPECT(i32.
value() == maxInt32);
124 BEAST_EXPECT(i32.
getText() ==
"2147483647");
125 BEAST_EXPECT(i32.
getSType() == STI_INT32);
TestcaseT testcase
Memberspace for declaring test cases.
value_type value() const noexcept
SerializedTypeID getSType() const override
json::Value getJson(JsonOptions) const override
std::string getText() const override
Use hash_* containers for keys that do not need a cryptographically secure hashing algorithm.
STInteger< std::uint64_t > STUInt64
STInteger< std::uint16_t > STUInt16
STInteger< std::int32_t > STInt32
STInteger< unsigned char > STUInt8
STInteger< std::uint32_t > STUInt32
BEAST_DEFINE_TESTSUITE(AccountTxPaging, app, xrpl)
void run() override
Runs the suite.