rippled
Loading...
Searching...
No Matches
escrow.h
1#ifndef XRPL_TEST_JTX_ESCROW_H_INCLUDED
2#define XRPL_TEST_JTX_ESCROW_H_INCLUDED
3
4#include <test/jtx/Account.h>
5#include <test/jtx/Env.h>
6#include <test/jtx/TestHelpers.h>
7#include <test/jtx/owners.h>
8#include <test/jtx/rate.h>
9
10#include <xrpl/protocol/Indexes.h>
11
12namespace ripple {
13namespace test {
14namespace jtx {
15
17namespace escrow {
18
20create(AccountID const& account, AccountID const& to, STAmount const& amount);
21
22inline Json::Value
23create(Account const& account, Account const& to, STAmount const& amount)
24{
25 return create(account.id(), to.id(), amount);
26}
27
29finish(AccountID const& account, AccountID const& from, std::uint32_t seq);
30
31inline Json::Value
32finish(Account const& account, Account const& from, std::uint32_t seq)
33{
34 return finish(account.id(), from.id(), seq);
35}
36
38cancel(AccountID const& account, Account const& from, std::uint32_t seq);
39
40inline Json::Value
41cancel(Account const& account, Account const& from, std::uint32_t seq)
42{
43 return cancel(account.id(), from, seq);
44}
45
46Rate
47rate(Env& env, Account const& account, std::uint32_t const& seq);
48
49// A PreimageSha256 fulfillments and its associated condition.
50std::array<std::uint8_t, 4> const fb1 = {{0xA0, 0x02, 0x80, 0x00}};
51
53 {0xA0, 0x25, 0x80, 0x20, 0xE3, 0xB0, 0xC4, 0x42, 0x98, 0xFC,
54 0x1C, 0x14, 0x9A, 0xFB, 0xF4, 0xC8, 0x99, 0x6F, 0xB9, 0x24,
55 0x27, 0xAE, 0x41, 0xE4, 0x64, 0x9B, 0x93, 0x4C, 0xA4, 0x95,
56 0x99, 0x1B, 0x78, 0x52, 0xB8, 0x55, 0x81, 0x01, 0x00}};
57
58// Another PreimageSha256 fulfillments and its associated condition.
60 {0xA0, 0x05, 0x80, 0x03, 0x61, 0x61, 0x61}};
61
63 {0xA0, 0x25, 0x80, 0x20, 0x98, 0x34, 0x87, 0x6D, 0xCF, 0xB0,
64 0x5C, 0xB1, 0x67, 0xA5, 0xC2, 0x49, 0x53, 0xEB, 0xA5, 0x8C,
65 0x4A, 0xC8, 0x9B, 0x1A, 0xDF, 0x57, 0xF2, 0x8F, 0x2F, 0x9D,
66 0x09, 0xAF, 0x10, 0x7E, 0xE8, 0xF0, 0x81, 0x01, 0x03}};
67
68// Another PreimageSha256 fulfillment and its associated condition.
70 {0xA0, 0x06, 0x80, 0x04, 0x6E, 0x69, 0x6B, 0x62}};
71
73 {0xA0, 0x25, 0x80, 0x20, 0x6E, 0x4C, 0x71, 0x45, 0x30, 0xC0,
74 0xA4, 0x26, 0x8B, 0x3F, 0xA6, 0x3B, 0x1B, 0x60, 0x6F, 0x2D,
75 0x26, 0x4A, 0x2D, 0x85, 0x7B, 0xE8, 0xA0, 0x9C, 0x1D, 0xFD,
76 0x57, 0x0D, 0x15, 0x85, 0x8B, 0xD4, 0x81, 0x01, 0x04}};
77
79auto const finish_time = JTxFieldWrapper<timePointField>(sfFinishAfter);
80
82auto const cancel_time = JTxFieldWrapper<timePointField>(sfCancelAfter);
83
84auto const condition = JTxFieldWrapper<blobField>(sfCondition);
85
86auto const fulfillment = JTxFieldWrapper<blobField>(sfFulfillment);
87
88} // namespace escrow
89
90} // namespace jtx
91
92} // namespace test
93} // namespace ripple
94
95#endif
Represents a JSON value.
Definition json_value.h:130
Immutable cryptographic account descriptor.
Definition Account.h:20
AccountID id() const
Returns the Account ID.
Definition Account.h:92
A transaction testing environment.
Definition Env.h:102
std::array< std::uint8_t, 7 > const fb2
Definition escrow.h:59
std::array< std::uint8_t, 8 > const fb3
Definition escrow.h:69
std::array< std::uint8_t, 39 > const cb1
Definition escrow.h:52
std::array< std::uint8_t, 39 > const cb3
Definition escrow.h:72
Json::Value create(AccountID const &account, AccountID const &to, STAmount const &amount)
Definition escrow.cpp:14
auto const finish_time
Set the "FinishAfter" time tag on a JTx.
Definition escrow.h:79
Rate rate(Env &env, Account const &account, std::uint32_t const &seq)
Definition escrow.cpp:50
auto const fulfillment
Definition escrow.h:86
Json::Value cancel(AccountID const &account, Account const &from, std::uint32_t seq)
Definition escrow.cpp:38
std::array< std::uint8_t, 39 > const cb2
Definition escrow.h:62
auto const cancel_time
Set the "CancelAfter" time tag on a JTx.
Definition escrow.h:82
std::array< std::uint8_t, 4 > const fb1
Definition escrow.h:50
Json::Value finish(AccountID const &account, AccountID const &from, std::uint32_t seq)
Definition escrow.cpp:26
Use hash_* containers for keys that do not need a cryptographically secure hashing algorithm.
Definition algorithm.h:6
Represents a transfer rate.
Definition Rate.h:21
Set the sequence number on a JTx.
Definition seq.h:15