20 #include <ripple/basics/CountedObject.h>
21 #include <ripple/beast/unit_test.h>
22 #include <ripple/protocol/SField.h>
23 #include <ripple/protocol/jss.h>
33 using namespace test::jtx;
38 using namespace std::chrono_literals;
42 result = env.rpc(
"get_counts")[jss::result];
43 BEAST_EXPECT(result[jss::status] ==
"success");
44 BEAST_EXPECT(!result.
isMember(
"Transaction"));
45 BEAST_EXPECT(!result.
isMember(
"STObject"));
46 BEAST_EXPECT(!result.
isMember(
"HashRouterEntry"));
52 result[jss::dbKBTotal].
asInt() > 0);
57 Account alice{
"alice"};
59 env.fund(XRP(10000), alice, bob);
60 env.trust(alice[
"USD"](1000), bob);
61 for (
auto i = 0; i < 20; ++i)
63 env(pay(alice, bob, alice[
"USD"](5)));
69 result = env.rpc(
"get_counts")[jss::result];
70 BEAST_EXPECT(result[jss::status] ==
"success");
72 auto const& objectCounts =
74 for (
auto const& it : objectCounts)
76 BEAST_EXPECTS(result.
isMember(it.first), it.first);
77 BEAST_EXPECTS(result[it.first].
asInt() == it.second, it.first);
79 BEAST_EXPECT(!result.
isMember(jss::local_txs));
85 result = env.rpc(
"get_counts",
"100")[jss::result];
86 BEAST_EXPECT(result[jss::status] ==
"success");
89 auto const& objectCounts =
91 for (
auto const& it : objectCounts)
93 BEAST_EXPECTS(result.
isMember(it.first), it.first);
94 BEAST_EXPECTS(result[it.first].
asInt() == it.second, it.first);
96 BEAST_EXPECT(!result.
isMember(
"Transaction"));
97 BEAST_EXPECT(!result.
isMember(
"STTx"));
98 BEAST_EXPECT(!result.
isMember(
"STArray"));
99 BEAST_EXPECT(!result.
isMember(
"HashRouterEntry"));
100 BEAST_EXPECT(!result.
isMember(
"STLedgerEntry"));
105 env(pay(alice, bob, alice[
"USD"](5)));
106 result = env.rpc(
"get_counts")[jss::result];
110 result[jss::local_txs].
asInt() > 0);