18        using namespace test::jtx;
 
   22            auto const result = env.
rpc(
"server_definitions");
 
   23            BEAST_EXPECT(!result[jss::result].isMember(jss::error));
 
   24            BEAST_EXPECT(result[jss::result][jss::status] == 
"success");
 
   25            BEAST_EXPECT(result[jss::result].isMember(jss::FIELDS));
 
   26            BEAST_EXPECT(result[jss::result].isMember(jss::LEDGER_ENTRY_TYPES));
 
   28                result[jss::result].isMember(jss::TRANSACTION_RESULTS));
 
   29            BEAST_EXPECT(result[jss::result].isMember(jss::TRANSACTION_TYPES));
 
   30            BEAST_EXPECT(result[jss::result].isMember(jss::TYPES));
 
   31            BEAST_EXPECT(result[jss::result].isMember(jss::hash));
 
   37                auto const firstField = result[jss::result][jss::FIELDS][0u];
 
   38                BEAST_EXPECT(firstField[0u].asString() == 
"Generic");
 
   40                    firstField[1][jss::isSerialized].asBool() == 
false);
 
   42                    firstField[1][jss::isSigningField].asBool() == 
false);
 
   43                BEAST_EXPECT(firstField[1][jss::isVLEncoded].asBool() == 
false);
 
   44                BEAST_EXPECT(firstField[1][jss::nth].asUInt() == 0);
 
   45                BEAST_EXPECT(firstField[1][jss::type].asString() == 
"Unknown");
 
   49                result[jss::result][jss::LEDGER_ENTRY_TYPES][
"AccountRoot"]
 
   52                result[jss::result][jss::TRANSACTION_RESULTS][
"tecDIR_FULL"]
 
   55                result[jss::result][jss::TRANSACTION_TYPES][
"Payment"]
 
   58                result[jss::result][jss::TYPES][
"AccountID"].asUInt() == 8);
 
   63                    for (
auto& field : result[jss::result][jss::FIELDS])
 
   65                        if (field[0u].asString() == name)
 
   72                BEAST_EXPECT(fieldExists(
"Generic"));
 
   73                BEAST_EXPECT(fieldExists(
"Invalid"));
 
   74                BEAST_EXPECT(fieldExists(
"ObjectEndMarker"));
 
   75                BEAST_EXPECT(fieldExists(
"ArrayEndMarker"));
 
   76                BEAST_EXPECT(fieldExists(
"taker_gets_funded"));
 
   77                BEAST_EXPECT(fieldExists(
"taker_pays_funded"));
 
   78                BEAST_EXPECT(fieldExists(
"hash"));
 
   79                BEAST_EXPECT(fieldExists(
"index"));
 
   84                auto const types = result[jss::result][jss::TYPES];
 
   85                BEAST_EXPECT(types[
"Hash128"].asUInt() == 4);
 
   86                BEAST_EXPECT(types[
"Hash160"].asUInt() == 17);
 
   87                BEAST_EXPECT(types[
"Hash192"].asUInt() == 21);
 
   88                BEAST_EXPECT(types[
"Hash256"].asUInt() == 5);
 
   89                BEAST_EXPECT(types[
"Hash384"].asUInt() == 22);
 
   90                BEAST_EXPECT(types[
"Hash512"].asUInt() == 23);
 
   97            auto const firstResult = env.
rpc(
"server_definitions");
 
   98            auto const hash = firstResult[jss::result][jss::hash].
asString();
 
   99            auto const hashParam =
 
  103                env.
rpc(
"json", 
"server_definitions", hashParam);
 
  104            BEAST_EXPECT(!result[jss::result].isMember(jss::error));
 
  105            BEAST_EXPECT(result[jss::result][jss::status] == 
"success");
 
  106            BEAST_EXPECT(!result[jss::result].isMember(jss::FIELDS));
 
  108                !result[jss::result].isMember(jss::LEDGER_ENTRY_TYPES));
 
  110                !result[jss::result].isMember(jss::TRANSACTION_RESULTS));
 
  111            BEAST_EXPECT(!result[jss::result].isMember(jss::TRANSACTION_TYPES));
 
  112            BEAST_EXPECT(!result[jss::result].isMember(jss::TYPES));
 
  113            BEAST_EXPECT(result[jss::result].isMember(jss::hash));
 
  120                "54296160385A27154BFA70A239DD8E8FD4CC2DB7BA32D970BA3A5B132CF749" 
  122            auto const hashParam =
 
  126                env.
rpc(
"json", 
"server_definitions", hashParam);
 
  127            BEAST_EXPECT(!result[jss::result].isMember(jss::error));
 
  128            BEAST_EXPECT(result[jss::result][jss::status] == 
"success");
 
  129            BEAST_EXPECT(result[jss::result].isMember(jss::FIELDS));
 
  130            BEAST_EXPECT(result[jss::result].isMember(jss::LEDGER_ENTRY_TYPES));
 
  132                result[jss::result].isMember(jss::TRANSACTION_RESULTS));
 
  133            BEAST_EXPECT(result[jss::result].isMember(jss::TRANSACTION_TYPES));
 
  134            BEAST_EXPECT(result[jss::result].isMember(jss::TYPES));
 
  135            BEAST_EXPECT(result[jss::result].isMember(jss::hash));