1#include <test/jtx/delegate.h>
3#include <test/jtx/Account.h>
4#include <test/jtx/Env.h>
6#include <xrpl/json/json_value.h>
7#include <xrpl/json/to_string.h>
8#include <xrpl/protocol/SField.h>
9#include <xrpl/protocol/jss.h>
22 jv[jss::TransactionType] = jss::DelegateSet;
23 jv[jss::Account] = account.human();
24 jv[sfAuthorize.jsonName] = authorize.
human();
26 for (
auto const& permission : permissions)
29 permissionValue[sfPermissionValue.jsonName] = permission;
31 permissionObj[sfPermission.jsonName] = permissionValue;
32 permissionsJson.
append(permissionObj);
35 jv[sfPermissions.jsonName] = permissionsJson;
44 jvParams[jss::ledger_index] = jss::validated;
45 jvParams[jss::delegate][jss::account] = account.human();
46 jvParams[jss::delegate][jss::authorize] = authorize.
human();
47 return env.
rpc(
"json",
"ledger_entry",
to_string(jvParams));
Value & append(Value const &value)
Append value to array at the end.
Immutable cryptographic account descriptor.
std::string const & human() const
Returns the human readable public key.
A transaction testing environment.
json::Value rpc(unsigned apiVersion, std::unordered_map< std::string, std::string > const &headers, std::string const &cmd, Args &&... args)
Execute an RPC command.
@ Array
array value (ordered list)
json::Value entry(jtx::Env &env, jtx::Account const &account, jtx::Account const &authorize)
json::Value set(jtx::Account const &account, jtx::Account const &authorize, std::vector< std::string > const &permissions)
std::string to_string(BaseUInt< Bits, Tag > const &a)