1#include <test/jtx/Env.h>
2#include <test/jtx/envconfig.h>
3#include <test/jtx/utility.h>
5#include <xrpld/core/Config.h>
7#include <xrpl/beast/unit_test/suite.h>
8#include <xrpl/json/json_reader.h>
9#include <xrpl/json/json_value.h>
10#include <xrpl/protocol/ApiVersion.h>
11#include <xrpl/protocol/jss.h>
13#include <boost/algorithm/string/replace.hpp>
71 {
"account_channels: minimal.",
73 {
"account_channels",
"rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh"},
76 "method" : "account_channels",
79 "api_version" : %API_VER%,
80 "account" : "rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh"
84 {"account_channels: account and ledger hash.",
87 "rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh",
88 "rD5MbavGfiSC5m7mkxy1FANuT7s3HxqpoF"},
91 "method" : "account_channels",
94 "api_version" : %API_VER%,
95 "account" : "rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh",
96 "destination_account" : "rD5MbavGfiSC5m7mkxy1FANuT7s3HxqpoF"
100 {"account_channels: account and ledger index.",
103 "rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh",
104 "r9emE59aTWb85t64dAebKrxYMBTpzK5yR7"},
107 "method" : "account_channels",
110 "api_version" : %API_VER%,
111 "account" : "rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh",
112 "destination_account" : "r9emE59aTWb85t64dAebKrxYMBTpzK5yR7"
116 {"account_channels: two accounts.",
119 "rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh",
120 "rnUy2SHTrB9DubsPmkJZUXTf5FcNDGrYEA"},
123 "method" : "account_channels",
126 "api_version" : %API_VER%,
127 "account" : "rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh",
128 "destination_account" : "rnUy2SHTrB9DubsPmkJZUXTf5FcNDGrYEA"
132 {"account_channels: two accounts and ledger hash.",
135 "rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh",
136 "rnUy2SHTrB9DubsPmkJZUXTf5FcNDGrYEA",
137 "0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF"},
140 "method" : "account_channels",
143 "api_version" : %API_VER%,
144 "account" : "rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh",
145 "destination_account" : "rnUy2SHTrB9DubsPmkJZUXTf5FcNDGrYEA",
146 "ledger_hash" : "0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF"
150 {"account_channels: two accounts and ledger index.",
153 "rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh",
154 "rnUy2SHTrB9DubsPmkJZUXTf5FcNDGrYEA",
158 "method" : "account_channels",
161 "api_version" : %API_VER%,
162 "account" : "rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh",
163 "destination_account" : "rnUy2SHTrB9DubsPmkJZUXTf5FcNDGrYEA",
164 "ledger_index" : 90210
168 {"account_channels: too few arguments.",
175 "method" : "account_channels",
178 "error" : "badSyntax",
180 "error_message" : "Syntax error."
184 {"account_channels: too many arguments.",
187 "rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh",
188 "rnUy2SHTrB9DubsPmkJZUXTf5FcNDGrYEA",
193 "method" : "account_channels",
196 "error" : "badSyntax",
198 "error_message" : "Syntax error."
202 {"account_channels: invalid accountID.",
210 "method" : "account_channels",
213 "error" : "actMalformed",
215 "error_message" : "Account malformed."
222 {
"account_currencies: minimal 1.",
224 {
"account_currencies",
"rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh"},
227 "method" : "account_currencies",
230 "api_version" : %API_VER%,
231 "account" : "rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh"
235 {"account_currencies: minimal 2.",
237 {
"account_currencies",
"racb4o3DrdYxuCfyVa6vsLb7vgju9RFbBr"},
240 "method" : "account_currencies",
243 "api_version" : %API_VER%,
244 "account" : "racb4o3DrdYxuCfyVa6vsLb7vgju9RFbBr"
248 {"account_currencies: ledger index.",
250 {
"account_currencies",
"rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh",
"42"},
253 "method" : "account_currencies",
256 "api_version" : %API_VER%,
257 "account" : "rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh",
262 {"account_currencies: validated ledger.",
264 {
"account_currencies",
"rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh",
"validated"},
267 "method" : "account_currencies",
270 "api_version" : %API_VER%,
271 "account" : "rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh",
272 "ledger_index" : "validated"
276 {"account_currencies: current ledger.",
278 {
"account_currencies",
"rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh",
"current"},
281 "method" : "account_currencies",
284 "account" : "rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh",
285 "api_version" : %API_VER%,
286 "ledger_index" : "current"
290 {"account_currencies: too few arguments.",
293 "account_currencies",
297 "method" : "account_currencies",
300 "error" : "badSyntax",
302 "error_message" : "Syntax error."
306 {"account_currencies: too many arguments.",
308 {
"account_currencies",
"rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh",
"current",
"spare1",
"spare2"},
311 "method" : "account_currencies",
314 "error" : "badSyntax",
316 "error_message" : "Syntax error."
320 {"account_currencies: invalid second argument.",
322 {
"account_currencies",
"rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh",
"yup"},
325 "method" : "account_currencies",
328 "api_version" : %API_VER%,
329 "account" : "rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh",
335 "account_currencies: invalid accountID.",
338 "account_currencies",
343 "method" : "account_currencies",
346 "error" : "actMalformed",
348 "error_message" : "Account malformed."
356 {
"account_info: minimal.",
358 {
"account_info",
"rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh"},
361 "method" : "account_info",
364 "api_version" : %API_VER%,
365 "account" : "rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh"
369 {"account_info: with numeric ledger index.",
371 {
"account_info",
"rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh",
"77777"},
374 "method" : "account_info",
377 "api_version" : %API_VER%,
378 "account" : "rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh",
379 "ledger_index" : 77777
383 {"account_info: with text ledger index.",
385 {
"account_info",
"rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh",
"closed"},
388 "method" : "account_info",
391 "api_version" : %API_VER%,
392 "account" : "rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh",
393 "ledger_index" : "closed"
397 {"account_info: with ledger hash.",
400 "rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh",
401 "0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF"},
404 "method" : "account_info",
407 "api_version" : %API_VER%,
408 "account" : "rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh",
409 "ledger_hash" : "0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF"
413 {"account_info: with ledger index.",
415 {
"account_info",
"rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh",
"validated"},
418 "method" : "account_info",
421 "account" : "rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh",
422 "api_version" : %API_VER%,
423 "ledger_index" : "validated"
427 {"account_info: too few arguments.",
434 "method" : "account_info",
437 "error" : "badSyntax",
439 "error_message" : "Syntax error."
443 {"account_info: too many arguments.",
445 {
"account_info",
"rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh",
"current",
"extra1",
"extra2"},
448 "method" : "account_info",
451 "error" : "badSyntax",
453 "error_message" : "Syntax error."
458 "account_info: invalid accountID.",
466 "method" : "account_info",
469 "error" : "actMalformed",
471 "error_message" : "Account malformed."
479 {
"account_lines: minimal.",
481 {
"account_lines",
"rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh"},
484 "method" : "account_lines",
487 "api_version" : %API_VER%,
488 "account" : "rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh",
492 {"account_lines: peer.",
494 {
"account_lines",
"rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh",
"rnUy2SHTrB9DubsPmkJZUXTf5FcNDGrYEA"},
497 "method" : "account_lines",
500 "api_version" : %API_VER%,
501 "account" : "rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh",
502 "peer" : "rnUy2SHTrB9DubsPmkJZUXTf5FcNDGrYEA"
506 {"account_lines: peer and numeric ledger index.",
509 "rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh",
510 "rnUy2SHTrB9DubsPmkJZUXTf5FcNDGrYEA",
514 "method" : "account_lines",
517 "api_version" : %API_VER%,
518 "account" : "rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh",
519 "ledger_index" : 888888888,
520 "peer" : "rnUy2SHTrB9DubsPmkJZUXTf5FcNDGrYEA"
524 {"account_lines: peer and text ledger index.",
527 "rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh",
528 "rnUy2SHTrB9DubsPmkJZUXTf5FcNDGrYEA",
532 "method" : "account_lines",
535 "api_version" : %API_VER%,
536 "account" : "rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh",
537 "ledger_index" : "closed",
538 "peer" : "rnUy2SHTrB9DubsPmkJZUXTf5FcNDGrYEA"
542 {"account_lines: peer and ledger hash.",
545 "rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh",
546 "rnUy2SHTrB9DubsPmkJZUXTf5FcNDGrYEA",
547 "FFFFEEEEDDDDCCCCBBBBAAAA9999888877776666555544443333222211110000"},
550 "method" : "account_lines",
553 "api_version" : %API_VER%,
554 "account" : "rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh",
555 "ledger_hash" : "FFFFEEEEDDDDCCCCBBBBAAAA9999888877776666555544443333222211110000",
556 "peer" : "rnUy2SHTrB9DubsPmkJZUXTf5FcNDGrYEA"
560 {"account_lines: too few arguments.",
567 "method" : "account_lines",
570 "error" : "badSyntax",
572 "error_message" : "Syntax error."
577 "account_lines: four arguments.",
580 "rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh",
581 "rnUy2SHTrB9DubsPmkJZUXTf5FcNDGrYEA",
586 "method" : "account_lines",
589 "api_version" : %API_VER%,
590 "account" : "rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh",
591 "ledger_index" : 12345678,
592 "peer" : "rnUy2SHTrB9DubsPmkJZUXTf5FcNDGrYEA"
597 "account_lines: five arguments.",
600 "rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh",
601 "rnUy2SHTrB9DubsPmkJZUXTf5FcNDGrYEA",
604 "0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF"},
607 "method" : "account_lines",
610 "api_version" : %API_VER%,
611 "account" : "rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh",
612 "ledger_index" : 12345678,
613 "peer" : "rnUy2SHTrB9DubsPmkJZUXTf5FcNDGrYEA"
617 {"account_lines: too many arguments.",
620 "rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh",
621 "rnUy2SHTrB9DubsPmkJZUXTf5FcNDGrYEA",
624 "0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF",
628 "method" : "account_lines",
631 "error" : "badSyntax",
633 "error_message" : "Syntax error."
638 "account_lines: first invalid accountID.",
646 "method" : "account_lines",
649 "error" : "actMalformed",
651 "error_message" : "Account malformed."
657 "account_lines: second invalid accountID.",
661 "rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh",
666 "method" : "account_lines",
669 "api_version" : %API_VER%,
670 "account" : "rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh"
676 "account_lines: invalid ledger selector.",
679 "rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh",
680 "rnUy2SHTrB9DubsPmkJZUXTf5FcNDGrYEA",
684 "method" : "account_lines",
687 "api_version" : %API_VER%,
688 "account" : "rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh",
690 "peer" : "rnUy2SHTrB9DubsPmkJZUXTf5FcNDGrYEA"
698 {
"account_objects: minimal.",
700 {
"account_objects",
"rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh"},
703 "method" : "account_objects",
706 "api_version" : %API_VER%,
707 "account" : "rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh"
711 {"account_objects: with numeric ledger index.",
713 {
"account_objects",
"rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh",
"77777"},
716 "method" : "account_objects",
719 "api_version" : %API_VER%,
720 "account" : "rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh",
721 "ledger_index" : 77777
725 {"account_objects: with text ledger index.",
727 {
"account_objects",
"rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh",
"closed"},
730 "method" : "account_objects",
733 "api_version" : %API_VER%,
734 "account" : "rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh",
735 "ledger_index" : "closed"
739 {"account_objects: with ledger hash.",
742 "rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh",
743 "0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF"},
746 "method" : "account_objects",
749 "api_version" : %API_VER%,
750 "account" : "rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh",
751 "ledger_hash" : "0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF"
755 {"account_objects: with ledger index.",
757 {
"account_objects",
"rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh",
"validated"},
760 "method" : "account_objects",
763 "api_version" : %API_VER%,
764 "account" : "rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh",
765 "ledger_index" : "validated"
769 {"account_objects: too few arguments.",
776 "method" : "account_objects",
779 "error" : "badSyntax",
781 "error_message" : "Syntax error."
786 "account_objects: four arguments.",
790 "rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh",
797 "method" : "account_objects",
800 "api_version" : %API_VER%,
801 "account" : "rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh"
806 "account_objects: five arguments.",
810 "rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh",
818 "method" : "account_objects",
821 "api_version" : %API_VER%,
822 "account" : "rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh"
826 {"account_objects: too many arguments.",
830 "rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh",
839 "method" : "account_objects",
842 "error" : "badSyntax",
844 "error_message" : "Syntax error."
849 "account_objects: invalid accountID.",
857 "method" : "account_objects",
860 "error" : "actMalformed",
862 "error_message" : "Account malformed."
870 "account_objects: invalid ledger selection 1.",
872 {
"account_objects",
"rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh",
"no_ledger"},
875 "method" : "account_objects",
878 "api_version" : %API_VER%,
879 "account" : "rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh",
888 "account_objects: invalid ledger selection 2.",
890 {
"account_objects",
"rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh",
"no_ledger"},
893 "method" : "account_objects",
896 "api_version" : %API_VER%,
897 "account" : "rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh",
906 {
"account_offers: minimal.",
908 {
"account_offers",
"rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh"},
911 "method" : "account_offers",
914 "api_version" : %API_VER%,
915 "account" : "rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh"
919 {"account_offers: with numeric ledger index.",
921 {
"account_offers",
"rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh",
"987654321"},
924 "method" : "account_offers",
927 "api_version" : %API_VER%,
928 "account" : "rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh",
929 "ledger_index" : 987654321
933 {"account_offers: with text ledger index.",
935 {
"account_offers",
"rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh",
"validated"},
938 "method" : "account_offers",
941 "api_version" : %API_VER%,
942 "account" : "rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh",
943 "ledger_index" : "validated"
947 {"account_offers: with ledger hash.",
950 "rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh",
951 "0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF"},
954 "method" : "account_offers",
957 "api_version" : %API_VER%,
958 "account" : "rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh",
959 "ledger_hash" : "0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF"
963 {"account_offers: with ledger index.",
965 {
"account_offers",
"rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh",
"validated"},
968 "method" : "account_offers",
971 "api_version" : %API_VER%,
972 "account" : "rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh",
973 "ledger_index" : "validated"
977 {"account_offers: too few arguments.",
984 "method" : "account_offers",
987 "error" : "badSyntax",
989 "error_message" : "Syntax error."
994 "account_offers: four arguments.",
996 {
"account_offers",
"rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh",
"current",
"extra"},
999 "method" : "account_offers",
1002 "api_version" : %API_VER%,
1003 "account" : "rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh"
1007 {"account_offers: too many arguments.",
1011 "rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh",
1019 "method" : "account_offers",
1022 "error" : "badSyntax",
1024 "error_message" : "Syntax error."
1029 "account_offers: invalid accountID.",
1037 "method" : "account_offers",
1040 "error" : "actMalformed",
1042 "error_message" : "Account malformed."
1050 "account_offers: invalid ledger selection 1.",
1052 {
"account_offers",
"rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh",
"no_ledger"},
1055 "method" : "account_offers",
1058 "api_version" : %API_VER%,
1059 "account" : "rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh",
1068 "account_offers: invalid ledger selection 2.",
1070 {
"account_offers",
"rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh",
"no_ledger"},
1073 "method" : "account_offers",
1076 "api_version" : %API_VER%,
1077 "account" : "rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh",
1086 {
"account_tx: minimal.",
1088 {
"account_tx",
"rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh"},
1091 "method" : "account_tx",
1094 "api_version" : %API_VER%,
1095 "account" : "rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh",
1099 {"account_tx: ledger_index .",
1101 {
"account_tx",
"rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh",
"444"},
1104 "method" : "account_tx",
1107 "api_version" : %API_VER%,
1108 "account" : "rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh",
1109 "ledger_index" : 444
1113 {"account_tx: ledger_index plus trailing params.",
1115 {
"account_tx",
"rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh",
"707",
"descending",
"binary",
"count"},
1118 "method" : "account_tx",
1121 "api_version" : %API_VER%,
1122 "account" : "rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh",
1125 "descending" : true,
1126 "ledger_index" : 707
1130 {"account_tx: ledger_index_min and _max.",
1132 {
"account_tx",
"rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh",
"-1",
"-1"},
1135 "method" : "account_tx",
1138 "api_version" : %API_VER%,
1139 "account" : "rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh",
1140 "ledger_index_max" : -1,
1141 "ledger_index_min" : -1
1145 {"account_tx: ledger_index_min and _max plus trailing params.",
1148 "rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh",
1156 "method" : "account_tx",
1159 "api_version" : %API_VER%,
1160 "account" : "rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh",
1163 "descending" : true,
1164 "ledger_index_max" : 413,
1165 "ledger_index_min" : -1
1169 {"account_tx: ledger_index_min and _max plus limit.",
1171 {
"account_tx",
"rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh",
"247",
"-1",
"300"},
1174 "method" : "account_tx",
1177 "api_version" : %API_VER%,
1178 "account" : "rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh",
1179 "ledger_index_max" : -1,
1180 "ledger_index_min" : 247,
1185 {"account_tx: ledger_index_min and _max, limit, trailing args.",
1188 "rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh",
1197 "method" : "account_tx",
1200 "api_version" : %API_VER%,
1201 "account" : "rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh",
1204 "descending" : true,
1205 "ledger_index_max" : -1,
1206 "ledger_index_min" : 247,
1211 {"account_tx: ledger_index_min and _max plus limit and offset.",
1213 {
"account_tx",
"rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh",
"589",
"590",
"67",
"45"},
1216 "method" : "account_tx",
1219 "api_version" : %API_VER%,
1220 "account" : "rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh",
1221 "ledger_index_max" : 590,
1222 "ledger_index_min" : 589,
1228 {"account_tx: ledger_index_min and _max, limit, offset, trailing.",
1231 "rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh",
1240 "method" : "account_tx",
1243 "api_version" : %API_VER%,
1244 "account" : "rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh",
1246 "descending" : true,
1247 "ledger_index_max" : 590,
1248 "ledger_index_min" : 589,
1254 {"account_tx: too few arguments.",
1261 "method" : "account_tx",
1264 "error" : "badSyntax",
1266 "error_message" : "Syntax error."
1270 {"account_tx: too many arguments.",
1273 "rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh",
1284 "method" : "account_tx",
1287 "error" : "badSyntax",
1289 "error_message" : "Syntax error."
1294 "account_tx: invalid accountID.",
1296 {
"account_tx",
"rHb9CJAWyB4rj9!VRWn96DkukG4bwdtyTh"},
1299 "method" : "account_tx",
1302 "error" : "actMalformed",
1304 "error_message" : "Account malformed."
1311 "account_tx: invalid ledger.",
1313 {
"account_tx",
"rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh",
"-478.7"},
1316 "method" : "account_tx",
1319 "api_version" : %API_VER%,
1320 "account" : "rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh",
1327 "account_tx: max less than min.",
1329 {
"account_tx",
"rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh",
"580",
"579"},
1333 "method" : "account_tx",
1336 "error" : "lgrIdxsInvalid",
1338 "error_message" : "Ledger indexes invalid."
1343 "method" : "account_tx",
1346 "error" : "notSynced",
1348 "error_message" : "Not synced to the network."
1355 "account_tx: non-integer min.",
1357 {
"account_tx",
"rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh",
"Binary",
"-1"},
1363 "account_tx: non-integer max.",
1365 {
"account_tx",
"rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh",
"-1",
"counts"},
1371 "account_tx: non-integer offset.",
1373 {
"account_tx",
"rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh",
"-1",
"-1",
"decending"},
1379 "account_tx: non-integer limit.",
1381 {
"account_tx",
"rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh",
"-1",
"-1",
"300",
"false"},
1386 "account_tx: RIPD-1570.",
1389 "rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh",
1401 {
"book_offers: minimal no issuer.",
1410 "method" : "book_offers",
1413 "api_version" : %API_VER%,
1423 {"book_offers: minimal with currency/issuer",
1427 "USD/rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh",
1428 "EUR/rnUy2SHTrB9DubsPmkJZUXTf5FcNDGrYEA",
1432 "method" : "book_offers",
1435 "api_version" : %API_VER%,
1438 "issuer" : "rnUy2SHTrB9DubsPmkJZUXTf5FcNDGrYEA"
1442 "issuer" : "rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh"
1449 "book_offers: add issuer.",
1451 {
"book_offers",
"USD",
"EUR",
"rnUy2SHTrB9DubsPmkJZUXTf5FcNDGrYEA"},
1454 "method" : "book_offers",
1457 "api_version" : %API_VER%,
1458 "issuer" : "rnUy2SHTrB9DubsPmkJZUXTf5FcNDGrYEA",
1468 {"book_offers: add issuer and numeric ledger index.",
1471 "USD/rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh",
1473 "rnUy2SHTrB9DubsPmkJZUXTf5FcNDGrYEA",
1477 "method" : "book_offers",
1480 "api_version" : %API_VER%,
1481 "issuer" : "rnUy2SHTrB9DubsPmkJZUXTf5FcNDGrYEA",
1482 "ledger_index" : 666,
1488 "issuer" : "rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh"
1493 {"book_offers: add issuer and text ledger index.",
1497 "EUR/rnUy2SHTrB9DubsPmkJZUXTf5FcNDGrYEA",
1498 "rnUy2SHTrB9DubsPmkJZUXTf5FcNDGrYEA",
1502 "method" : "book_offers",
1505 "api_version" : %API_VER%,
1506 "issuer" : "rnUy2SHTrB9DubsPmkJZUXTf5FcNDGrYEA",
1507 "ledger_index" : "current",
1510 "issuer" : "rnUy2SHTrB9DubsPmkJZUXTf5FcNDGrYEA"
1518 {"book_offers: add issuer and ledger hash.",
1521 "USD/rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh",
1522 "EUR/rnUy2SHTrB9DubsPmkJZUXTf5FcNDGrYEA",
1523 "rnUy2SHTrB9DubsPmkJZUXTf5FcNDGrYEA",
1524 "ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789"},
1527 "method" : "book_offers",
1530 "api_version" : %API_VER%,
1531 "issuer" : "rnUy2SHTrB9DubsPmkJZUXTf5FcNDGrYEA",
1532 "ledger_hash" : "ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789",
1535 "issuer" : "rnUy2SHTrB9DubsPmkJZUXTf5FcNDGrYEA"
1539 "issuer" : "rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh"
1544 {"book_offers: issuer, ledger hash, and limit.",
1548 "USD/rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh",
1549 "EUR/rnUy2SHTrB9DubsPmkJZUXTf5FcNDGrYEA",
1550 "rnUy2SHTrB9DubsPmkJZUXTf5FcNDGrYEA",
1551 "ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789",
1556 "method" : "book_offers",
1559 "api_version" : %API_VER%,
1560 "issuer" : "rnUy2SHTrB9DubsPmkJZUXTf5FcNDGrYEA",
1561 "ledger_hash" : "ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789",
1565 "issuer" : "rnUy2SHTrB9DubsPmkJZUXTf5FcNDGrYEA"
1569 "issuer" : "rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh"
1575 "book_offers: issuer, ledger hash, limit, and marker.",
1578 "USD/rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh",
1579 "EUR/rnUy2SHTrB9DubsPmkJZUXTf5FcNDGrYEA",
1580 "rnUy2SHTrB9DubsPmkJZUXTf5FcNDGrYEA",
1581 "ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789",
1587 "method" : "book_offers",
1590 "api_version" : %API_VER%,
1591 "issuer" : "rnUy2SHTrB9DubsPmkJZUXTf5FcNDGrYEA",
1592 "ledger_hash" : "ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789",
1594 "marker" : "MyMarker",
1597 "issuer" : "rnUy2SHTrB9DubsPmkJZUXTf5FcNDGrYEA"
1601 "issuer" : "rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh"
1606 {"book_offers: too few arguments.",
1613 "method" : "book_offers",
1616 "error" : "badSyntax",
1618 "error_message" : "Syntax error."
1622 {"book_offers: too many arguments.",
1625 "USD/rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh",
1626 "EUR/rnUy2SHTrB9DubsPmkJZUXTf5FcNDGrYEA",
1627 "rnUy2SHTrB9DubsPmkJZUXTf5FcNDGrYEA",
1628 "ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789",
1635 "method" : "book_offers",
1638 "error" : "badSyntax",
1640 "error_message" : "Syntax error."
1645 {"book_offers: taker pays no currency.",
1649 "/rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh",
1650 "EUR/rnUy2SHTrB9DubsPmkJZUXTf5FcNDGrYEA",
1654 "method" : "book_offers",
1657 "error" : "invalidParams",
1659 "error_message" : "Invalid currency/issuer '/rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh'"
1663 {"book_offers: taker gets no currency.",
1667 "USD/rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh",
1668 "/rnUy2SHTrB9DubsPmkJZUXTf5FcNDGrYEA",
1672 "method" : "book_offers",
1675 "error" : "invalidParams",
1677 "error_message" : "Invalid currency/issuer '/rnUy2SHTrB9DubsPmkJZUXTf5FcNDGrYEA'"
1681 {"book_offers: invalid issuer.",
1683 {
"book_offers",
"USD",
"EUR",
"not_a_valid_issuer"},
1686 "method" : "book_offers",
1689 "api_version" : %API_VER%,
1690 "issuer" : "not_a_valid_issuer",
1700 {"book_offers: invalid text ledger index.",
1704 "EUR/rnUy2SHTrB9DubsPmkJZUXTf5FcNDGrYEA",
1705 "rnUy2SHTrB9DubsPmkJZUXTf5FcNDGrYEA",
1709 "method" : "book_offers",
1712 "api_version" : %API_VER%,
1713 "issuer" : "rnUy2SHTrB9DubsPmkJZUXTf5FcNDGrYEA",
1717 "issuer" : "rnUy2SHTrB9DubsPmkJZUXTf5FcNDGrYEA"
1726 "book_offers: non-numeric limit.",
1730 "USD/rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh",
1731 "EUR/rnUy2SHTrB9DubsPmkJZUXTf5FcNDGrYEA",
1732 "rnUy2SHTrB9DubsPmkJZUXTf5FcNDGrYEA",
1733 "ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789",
1738 "method" : "book_offers",
1741 "error" : "invalidParams",
1743 "error_message" : "Invalid field 'limit'."
1750 {
"can_delete: minimal.",
1757 "method" : "can_delete",
1760 "api_version" : %API_VER%,
1764 {"can_delete: ledger index.",
1772 "method" : "can_delete",
1775 "api_version" : %API_VER%,
1776 "can_delete" : 4294967295
1780 {"can_delete: ledger hash.",
1784 "FEDCBA9876543210FEDCBA9876543210FEDCBA9876543210FEDCBA9876543210",
1788 "method" : "can_delete",
1791 "api_version" : %API_VER%,
1792 "can_delete" : "FEDCBA9876543210FEDCBA9876543210FEDCBA9876543210FEDCBA9876543210"
1796 {"can_delete: always.",
1804 "method" : "can_delete",
1807 "api_version" : %API_VER%,
1808 "can_delete" : "always"
1812 {"can_delete: never.",
1820 "method" : "can_delete",
1823 "api_version" : %API_VER%,
1824 "can_delete" : "never"
1828 {"can_delete: now.",
1836 "method" : "can_delete",
1839 "api_version" : %API_VER%,
1840 "can_delete" : "now"
1844 {"can_delete: too many arguments.",
1846 {
"can_delete",
"always",
"never"},
1849 "method" : "can_delete",
1852 "error" : "badSyntax",
1854 "error_message" : "Syntax error."
1858 {"can_delete: invalid argument.",
1860 {
"can_delete",
"invalid"},
1863 "method" : "can_delete",
1866 "api_version" : %API_VER%,
1867 "can_delete" : "invalid"
1872 "can_delete: ledger index > 32 bits.",
1881 "can_delete: ledger hash with no alphas.",
1885 "0123456701234567012345670123456701234567012345670123456701234567",
1892 {
"channel_authorize: minimal.",
1894 {
"channel_authorize",
1895 "secret_can_be_anything",
1896 "0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF",
1897 "18446744073709551615"},
1900 "method" : "channel_authorize",
1903 "api_version" : %API_VER%,
1904 "amount" : "18446744073709551615",
1905 "channel_id" : "0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF",
1906 "secret" : "secret_can_be_anything"
1910 {"channel_authorize: too few arguments.",
1913 "channel_authorize",
1914 "secret_can_be_anything",
1915 "0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF",
1919 "method" : "channel_authorize",
1922 "error" : "badSyntax",
1924 "error_message" : "Syntax error."
1928 {"channel_authorize: too many arguments.",
1930 {
"channel_authorize",
1932 "0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF",
1938 "method" : "channel_authorize",
1941 "error" : "badSyntax",
1943 "error_message" : "Syntax error."
1947 {"channel_authorize: bad key type.",
1949 {
"channel_authorize",
1951 "0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF",
1956 "method" : "channel_authorize",
1959 "error" : "badKeyType",
1961 "error_message" : "Bad key type."
1965 {"channel_authorize: channel_id too short.",
1967 {
"channel_authorize",
1968 "secret_can_be_anything",
1969 "123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF",
1973 "method" : "channel_authorize",
1976 "error" : "channelMalformed",
1978 "error_message" : "Payment channel is malformed."
1982 {"channel_authorize: channel_id too long.",
1984 {
"channel_authorize",
1985 "secret_can_be_anything",
1986 "10123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF",
1990 "method" : "channel_authorize",
1993 "error" : "channelMalformed",
1995 "error_message" : "Payment channel is malformed."
1999 {"channel_authorize: channel_id not hex.",
2001 {
"channel_authorize",
2002 "secret_can_be_anything",
2003 "0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEZ",
2007 "method" : "channel_authorize",
2010 "error" : "channelMalformed",
2012 "error_message" : "Payment channel is malformed."
2016 {"channel_authorize: negative amount.",
2018 {
"channel_authorize",
2019 "secret_can_be_anything",
2020 "0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF",
2024 "method" : "channel_authorize",
2027 "error" : "channelAmtMalformed",
2029 "error_message" : "Payment channel amount is malformed."
2033 {"channel_authorize: amount > 64 bits.",
2035 {
"channel_authorize",
2036 "secret_can_be_anything",
2037 "0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF",
2038 "18446744073709551616"},
2041 "method" : "channel_authorize",
2044 "error" : "channelAmtMalformed",
2046 "error_message" : "Payment channel amount is malformed."
2053 {
"channel_verify: public key.",
2056 "aB4BXXLuPu8DpVuyq1DBiu3SrPdtK9AYZisKhu8mvkoiUD8J9Gov",
2057 "0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF",
2062 "method" : "channel_verify",
2065 "api_version" : %API_VER%,
2067 "channel_id" : "0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF",
2068 "public_key" : "aB4BXXLuPu8DpVuyq1DBiu3SrPdtK9AYZisKhu8mvkoiUD8J9Gov",
2069 "signature" : "DEADBEEF"
2073 {"channel_verify: public key hex.",
2076 "021D93E21C44160A1B3B66DA1F37B86BE39FFEA3FC4B95FAA2063F82EE823599F6",
2077 "0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF",
2078 "18446744073709551615",
2082 "method" : "channel_verify",
2085 "api_version" : %API_VER%,
2086 "amount" : "18446744073709551615",
2087 "channel_id" : "0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF",
2088 "public_key" : "021D93E21C44160A1B3B66DA1F37B86BE39FFEA3FC4B95FAA2063F82EE823599F6",
2089 "signature" : "DEADBEEF"
2093 {"channel_verify: too few arguments.",
2096 "aB4BXXLuPu8DpVuyq1DBiu3SrPdtK9AYZisKhu8mvkoiUD8J9Gov",
2097 "0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF"},
2100 "method" : "channel_verify",
2103 "error" : "badSyntax",
2105 "error_message" : "Syntax error."
2109 {"channel_verify: too many arguments.",
2112 "aB4BXXLuPu8DpVuyq1DBiu3SrPdtK9AYZisKhu8mvkoiUD8J9Gov",
2113 "0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF",
2119 "method" : "channel_verify",
2122 "error" : "badSyntax",
2124 "error_message" : "Syntax error."
2128 {"channel_verify: malformed public key.",
2131 "aB4BXXLuPu8DpVuyq1DBiu3SrPdtK9AYZisKhu8mvkoiUD8J9GoV",
2132 "0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF",
2137 "method" : "channel_verify",
2140 "error" : "publicMalformed",
2142 "error_message" : "Public key is malformed."
2146 {"channel_verify: malformed hex public key.",
2149 "021D93E21C44160A1B3B66DA1F37B86BE39FFEA3FC4B95FAA2063F82EE823599F",
2150 "0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF",
2155 "method" : "channel_verify",
2158 "error" : "publicMalformed",
2160 "error_message" : "Public key is malformed."
2164 {"channel_verify: invalid channel id.",
2167 "aB4BXXLuPu8DpVuyq1DBiu3SrPdtK9AYZisKhu8mvkoiUD8J9Gov",
2168 "10123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF",
2173 "method" : "channel_verify",
2176 "error" : "channelMalformed",
2178 "error_message" : "Payment channel is malformed."
2182 {"channel_verify: short channel id.",
2185 "aB4BXXLuPu8DpVuyq1DBiu3SrPdtK9AYZisKhu8mvkoiUD8J9Gov",
2186 "123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF",
2191 "method" : "channel_verify",
2194 "error" : "channelMalformed",
2196 "error_message" : "Payment channel is malformed."
2200 {"channel_verify: amount too small.",
2203 "021D93E21C44160A1B3B66DA1F37B86BE39FFEA3FC4B95FAA2063F82EE823599F6",
2204 "0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF",
2209 "method" : "channel_verify",
2212 "error" : "channelAmtMalformed",
2214 "error_message" : "Payment channel amount is malformed."
2218 {"channel_verify: amount too large.",
2221 "021D93E21C44160A1B3B66DA1F37B86BE39FFEA3FC4B95FAA2063F82EE823599F6",
2222 "0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF",
2223 "18446744073709551616",
2227 "method" : "channel_verify",
2230 "error" : "channelAmtMalformed",
2232 "error_message" : "Payment channel amount is malformed."
2236 {"channel_verify: non-hex signature.",
2239 "aB4BXXLuPu8DpVuyq1DBiu3SrPdtK9AYZisKhu8mvkoiUD8J9Gov",
2240 "0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF",
2242 "ThisIsNotHexadecimal"},
2245 "method" : "channel_verify",
2248 "api_version" : %API_VER%,
2249 "amount" : "40000000",
2250 "channel_id" : "0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF",
2251 "public_key" : "aB4BXXLuPu8DpVuyq1DBiu3SrPdtK9AYZisKhu8mvkoiUD8J9Gov",
2252 "signature" : "ThisIsNotHexadecimal"
2259 {
"connect: minimal.",
2263 "ThereIsNoCheckingOnTheIPFormat",
2267 "method" : "connect",
2270 "api_version" : %API_VER%,
2271 "ip" : "ThereIsNoCheckingOnTheIPFormat"
2275 {"connect: ip and port.",
2277 {
"connect",
"ThereIsNoCheckingOnTheIPFormat",
"6561"},
2280 "method" : "connect",
2283 "api_version" : %API_VER%,
2284 "ip" : "ThereIsNoCheckingOnTheIPFormat",
2289 {"connect: too few arguments.",
2296 "method" : "connect",
2299 "error" : "badSyntax",
2301 "error_message" : "Syntax error."
2305 {"connect: too many arguments.",
2307 {
"connect",
"ThereIsNoCheckingOnTheIPFormat",
"6561",
"extra"},
2310 "method" : "connect",
2313 "error" : "badSyntax",
2315 "error_message" : "Syntax error."
2320 "connect: port too small.",
2324 "ThereIsNoCheckingOnTheIPFormat",
2330 "connect: port too large.",
2334 "ThereIsNoCheckingOnTheIPFormat",
2342 {
"consensus_info: minimal.",
2349 "method" : "consensus_info",
2352 "api_version" : %API_VER%
2356 {"consensus_info: too many arguments.",
2358 {
"consensus_info",
"whatever"},
2361 "method" : "consensus_info",
2364 "error" : "badSyntax",
2366 "error_message" : "Syntax error."
2373 {
"deposit_authorized: minimal.",
2376 "deposit_authorized",
2377 "source_account_NotValidated",
2378 "destination_account_NotValidated",
2382 "method" : "deposit_authorized",
2385 "api_version" : %API_VER%,
2386 "destination_account" : "destination_account_NotValidated",
2387 "source_account" : "source_account_NotValidated"
2391 {"deposit_authorized: with text ledger index.",
2393 {
"deposit_authorized",
2394 "source_account_NotValidated",
2395 "destination_account_NotValidated",
2399 "method" : "deposit_authorized",
2402 "api_version" : %API_VER%,
2403 "destination_account" : "destination_account_NotValidated",
2404 "ledger_index" : "validated",
2405 "source_account" : "source_account_NotValidated"
2409 {"deposit_authorized: with ledger index.",
2411 {
"deposit_authorized",
2412 "source_account_NotValidated",
2413 "destination_account_NotValidated",
2425 "method" : "deposit_authorized",
2428 "api_version" : %API_VER%,
2429 "destination_account" : "destination_account_NotValidated",
2430 "ledger_index" : 4294967295,
2431 "source_account" : "source_account_NotValidated",
2432 "credentials": ["cred1", "cred2", "cred3", "cred4", "cred5", "cred6", "cred7", "cred8"]
2436 {"deposit_authorized: with ledger hash.",
2438 {
"deposit_authorized",
2439 "source_account_NotValidated",
2440 "destination_account_NotValidated",
2441 "ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789"},
2444 "method" : "deposit_authorized",
2447 "api_version" : %API_VER%,
2448 "destination_account" : "destination_account_NotValidated",
2449 "ledger_hash" : "ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789",
2450 "source_account" : "source_account_NotValidated"
2454 {"deposit_authorized: too few arguments.",
2457 "deposit_authorized",
2458 "source_account_NotValidated",
2462 "method" : "deposit_authorized",
2465 "error" : "badSyntax",
2467 "error_message" : "Syntax error."
2471 {"deposit_authorized: too many arguments.",
2473 {
"deposit_authorized",
2474 "source_account_NotValidated",
2475 "destination_account_NotValidated",
2476 "ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789",
2488 "method" : "deposit_authorized",
2491 "error" : "badSyntax",
2493 "error_message" : "Syntax error."
2497 {"deposit_authorized: invalid ledger selection.",
2500 "deposit_authorized",
2501 "source_account_NotValidated",
2502 "destination_account_NotValidated",
2507 "method" : "deposit_authorized",
2510 "api_version" : %API_VER%,
2511 "destination_account" : "destination_account_NotValidated",
2513 "source_account" : "source_account_NotValidated"
2520 {
"feature: minimal.",
2527 "method" : "feature",
2530 "api_version" : %API_VER%,
2534 {"feature: with name.",
2536 {
"feature",
"featureNameOrHexIsNotValidated"},
2539 "method" : "feature",
2542 "api_version" : %API_VER%,
2543 "feature" : "featureNameOrHexIsNotValidated"
2547 {"feature: accept.",
2550 "FEDCBA9876543210FEDCBA9876543210FEDCBA9876543210FEDCBA9876543210FEDCBA98"
2555 "method" : "feature",
2558 "api_version" : %API_VER%,
2559 "feature" : "FEDCBA9876543210FEDCBA9876543210FEDCBA9876543210FEDCBA9876543210FEDCBA9876543210",
2564 {"feature: reject.",
2566 {
"feature",
"0",
"reject"},
2569 "method" : "feature",
2572 "api_version" : %API_VER%,
2578 {"feature: too many arguments.",
2580 {
"feature",
"featureNameOrHexIsNotValidated",
"accept",
"anotherArg"},
2583 "method" : "feature",
2586 "error" : "badSyntax",
2588 "error_message" : "Syntax error."
2592 {"feature: neither accept nor reject.",
2596 "featureNameOrHexIsNotValidated",
2601 "method" : "feature",
2604 "error" : "invalidParams",
2606 "error_message" : "Invalid parameters."
2613 {
"fetch_info: minimal.",
2620 "method" : "fetch_info",
2623 "api_version" : %API_VER%,
2627 {"fetch_info: clear.",
2629 {
"fetch_info",
"clear"},
2632 "method" : "fetch_info",
2635 "api_version" : %API_VER%,
2640 {"fetch_info: too many arguments.",
2642 {
"fetch_info",
"clear",
"other"},
2645 "method" : "fetch_info",
2648 "error" : "badSyntax",
2650 "error_message" : "Syntax error."
2654 {"fetch_info: other trailing argument.",
2656 {
"fetch_info",
"too"},
2659 "method" : "fetch_info",
2662 "api_version" : %API_VER%,
2670 {
"gateway_balances: minimal.",
2672 {
"gateway_balances",
"rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh"},
2675 "method" : "gateway_balances",
2678 "api_version" : %API_VER%,
2679 "account" : "rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh",
2683 {"gateway_balances: with ledger index.",
2685 {
"gateway_balances",
"890765",
"rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh"},
2688 "method" : "gateway_balances",
2691 "api_version" : %API_VER%,
2692 "account" : "rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh",
2693 "ledger_index" : "890765"
2697 {"gateway_balances: with text ledger index.",
2699 {
"gateway_balances",
"current",
"rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh"},
2702 "method" : "gateway_balances",
2705 "api_version" : %API_VER%,
2706 "account" : "rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh",
2707 "ledger_index" : "current"
2711 {"gateway_balances: with 64 character ledger hash.",
2713 {
"gateway_balances",
2714 "0123456789ABCDEFGHIJKLMNOPQRSTUV0123456789ABCDEFGHIJKLMNOPQRSTUV",
2715 "rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh"},
2718 "method" : "gateway_balances",
2721 "api_version" : %API_VER%,
2722 "account" : "rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh",
2723 "ledger_hash" : "0123456789ABCDEFGHIJKLMNOPQRSTUV0123456789ABCDEFGHIJKLMNOPQRSTUV"
2727 {"gateway_balances: 1 hotwallet.",
2729 {
"gateway_balances",
"rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh",
"hotwallet_is_not_validated"},
2732 "method" : "gateway_balances",
2735 "api_version" : %API_VER%,
2736 "account" : "rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh",
2737 "hotwallet" : [ "hotwallet_is_not_validated" ]
2741 {"gateway_balances: 3 hotwallets.",
2745 "0123456789ABCDEFGHIJKLMNOPQRSTUV0123456789ABCDEFGHIJKLMNOPQRSTUV",
2746 "rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh",
2747 "hotwallet_is_not_validated_1",
2748 "hotwallet_is_not_validated_2",
2749 "hotwallet_is_not_validated_3",
2753 "method" : "gateway_balances",
2756 "api_version" : %API_VER%,
2757 "account" : "rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh",
2759 "hotwallet_is_not_validated_1",
2760 "hotwallet_is_not_validated_2",
2761 "hotwallet_is_not_validated_3"
2763 "ledger_hash" : "0123456789ABCDEFGHIJKLMNOPQRSTUV0123456789ABCDEFGHIJKLMNOPQRSTUV"
2767 {"gateway_balances: too few arguments.",
2774 "method" : "gateway_balances",
2777 "error" : "badSyntax",
2779 "error_message" : "Syntax error."
2783 {"gateway_balances: empty first argument.",
2785 {
"gateway_balances",
""},
2788 "method" : "gateway_balances",
2791 "error" : "invalidParams",
2793 "error_message" : "Invalid first parameter"
2797 {"gateway_balances: with ledger index but no gateway.",
2805 "method" : "gateway_balances",
2808 "error" : "invalidParams",
2810 "error_message" : "Invalid hotwallet"
2814 {"gateway_balances: with text ledger index but no gateway.",
2822 "method" : "gateway_balances",
2825 "error" : "invalidParams",
2827 "error_message" : "Invalid hotwallet"
2831 {"gateway_balances: with 64 character ledger hash but no gateway.",
2835 "0123456789ABCDEFGHIJKLMNOPQRSTUV0123456789ABCDEFGHIJKLMNOPQRSTUV",
2839 "method" : "gateway_balances",
2842 "error" : "invalidParams",
2844 "error_message" : "Invalid hotwallet"
2851 {
"get_counts: minimal.",
2858 "method" : "get_counts",
2861 "api_version" : %API_VER%,
2865 {"get_counts: with maximum count.",
2867 {
"get_counts",
"100"},
2870 "method" : "get_counts",
2873 "api_version" : %API_VER%,
2878 {"get_counts: too many arguments.",
2880 {
"get_counts",
"100",
"whatever"},
2883 "method" : "get_counts",
2886 "error" : "badSyntax",
2888 "error_message" : "Syntax error."
2892 {"get_counts: count too small.",
2900 {"get_counts: count too large.",
2902 {
"get_counts",
"4294967296"},
2913 R
"({"json_argument":true})",
2917 "method" : "command",
2920 "api_version" : %API_VER%,
2921 "json_argument" : true,
2922 "method" : "command"
2926 {"json: null object.",
2935 "method" : "command",
2938 "api_version" : %API_VER%,
2939 "method" : "command"
2943 {"json: too few arguments.",
2945 {
"json",
"command"},
2951 "error" : "badSyntax",
2953 "error_message" : "Syntax error."
2957 {"json: too many arguments.",
2959 {
"json",
"command", R
"({"json_argument":true})", "extra"},
2965 "error" : "badSyntax",
2967 "error_message" : "Syntax error."
2971 {"json: array, not object.",
2976 R
"(["arg1","arg2"])",
2983 "error" : "invalidParams",
2985 "error_message" : "Invalid parameters."
2989 {"json: invalid json (note closing comma).",
2994 R
"({"json_argument":true,})",
3001 "error" : "invalidParams",
3003 "error_message" : "Invalid parameters."
3010 {
"json2: minimal object.",
3014 R
"({"jsonrpc":"2.0","ripplerpc":"2.0","id":"A1","method":"call_1"})",
3020 "method" : "call_1",
3023 "api_version" : %API_VER%,
3026 "method" : "call_1",
3032 {"json2: object with nested params.",
3038 "ripplerpc" : "2.0",
3040 "method" : "call_1",
3041 "params" : [{"inner_arg" : "yup"}]
3048 "method" : "call_1",
3051 "api_version" : %API_VER%,
3057 "method" : "call_1",
3063 {"json2: minimal array.",
3067 R
"([{"jsonrpc":"2.0","ripplerpc":"2.0","id":"A1","method":"call_1"}])",
3075 "api_version" : %API_VER%,
3078 "method" : "call_1",
3084 {"json2: array with object with nested params.",
3093 "params" : [{"inner_arg" : "yup"}]}
3102 "api_version" : %API_VER%,
3108 "method" : "call_1",
3113 {"json2: too few arguments.",
3123 "error" : "badSyntax",
3125 "error_message" : "Syntax error."
3129 {"json2: too many arguments.",
3131 {
"json2", R
"({"jsonrpc":"2.0","ripplerpc":"2.0","id":"A1","method":"call_this"})", "extra"},
3137 "error" : "badSyntax",
3139 "error_message" : "Syntax error."
3143 {"json2: malformed json (note extra comma).",
3147 R
"({"jsonrpc":"2.0","ripplerpc":"2.0","id":"A1","method":"call_1",})",
3156 "error" : "invalidParams",
3158 "error_message" : "Invalid parameters.",
3166 {"json2: omit jsonrpc.",
3170 R
"({"ripplerpc":"2.0","id":"A1","method":"call_1"})",
3178 "error" : "invalidParams",
3180 "error_message" : "Invalid parameters.",
3187 {"json2: wrong jsonrpc version.",
3191 R
"({"jsonrpc":"2.1","ripplerpc":"2.0","id":"A1","method":"call_1"})",
3200 "error" : "invalidParams",
3202 "error_message" : "Invalid parameters.",
3210 {"json2: omit ripplerpc.",
3214 R
"({"jsonrpc":"2.0","id":"A1","method":"call_1"})",
3223 "error" : "invalidParams",
3225 "error_message" : "Invalid parameters.",
3231 {"json2: wrong ripplerpc version.",
3235 R
"({"jsonrpc":"2.0","ripplerpc":"2.00","id":"A1","method":"call_1"})",
3244 "error" : "invalidParams",
3246 "error_message" : "Invalid parameters.",
3249 "ripplerpc" : "2.00"
3252 "ripplerpc" : "2.00"
3258 R
"({"jsonrpc":"2.0","ripplerpc":"2.0","method":"call_1"})",
3266 "error" : "invalidParams",
3268 "error_message" : "Invalid parameters.",
3275 {"json2: omit method.",
3279 R
"({"jsonrpc":"2.0","ripplerpc":"2.0","id":"A1"})",
3288 "error" : "invalidParams",
3290 "error_message" : "Invalid parameters.",
3298 {"json2: empty outer array.",
3309 "error" : "invalidParams",
3311 "error_message" : "Invalid parameters."
3315 {"json2: empty inner array.",
3319 R
"([{"jsonrpc":"2.0","ripplerpc":"2.0","id":"A1","method":"call_1",[]}])",
3326 "error" : "invalidParams",
3328 "error_message" : "Invalid parameters."
3332 {"json2: array with non-json2 object.",
3338 "ripplerpc" : "2.0",
3349 "error" : "invalidParams",
3351 "error_message" : "Invalid parameters."
3355 {"json2: non-object or -array inner params member.",
3361 "ripplerpc" : "2.0",
3363 "method" : "call_1",
3374 "error" : "invalidParams",
3376 "error_message" : "Invalid parameters.",
3387 {
"ledger: minimal.",
3392 "method" : "ledger",
3395 "api_version" : %API_VER%,
3399 {"ledger: ledger index.",
3401 {
"ledger",
"4294967295"},
3404 "method" : "ledger",
3407 "api_version" : %API_VER%,
3408 "ledger_index" : 4294967295
3412 {"ledger: text ledger index.",
3414 {
"ledger",
"validated"},
3417 "method" : "ledger",
3420 "api_version" : %API_VER%,
3421 "ledger_index" : "validated"
3425 {"ledger: ledger hash.",
3427 {
"ledger",
"ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789"},
3430 "method" : "ledger",
3433 "api_version" : %API_VER%,
3434 "ledger_hash" : "ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789"
3440 {
"ledger",
"current",
"full"},
3443 "method" : "ledger",
3446 "api_version" : %API_VER%,
3448 "ledger_index" : "current"
3454 {
"ledger",
"closed",
"tx"},
3457 "method" : "ledger",
3460 "api_version" : %API_VER%,
3462 "ledger_index" : "closed",
3463 "transactions" : true
3467 {"ledger: too many arguments.",
3469 {
"ledger",
"4294967295",
"spare"},
3472 "method" : "ledger",
3475 "api_version" : %API_VER%,
3476 "ledger_index" : 4294967295
3480 {"ledger: ledger index too small.",
3485 "method" : "ledger",
3488 "api_version" : %API_VER%,
3493 {"ledger: ledger index too big.",
3495 {
"ledger",
"4294967296"},
3498 "method" : "ledger",
3501 "api_version" : %API_VER%,
3506 {"ledger: invalid ledger text.",
3508 {
"ledger",
"latest"},
3511 "method" : "ledger",
3514 "api_version" : %API_VER%,
3519 {"ledger: unsupported final argument.",
3521 {
"ledger",
"current",
"expand"},
3524 "method" : "ledger",
3527 "api_version" : %API_VER%,
3528 "ledger_index" : "current"
3535 {
"ledger_closed: minimal.",
3540 "method" : "ledger_closed",
3543 "api_version" : %API_VER%,
3547 {"ledger_closed: too many arguments.",
3549 {
"ledger_closed",
"today"},
3552 "method" : "ledger_closed",
3555 "error" : "badSyntax",
3557 "error_message" : "Syntax error."
3564 {
"ledger_current: minimal.",
3569 "method" : "ledger_current",
3572 "api_version" : %API_VER%,
3576 {"ledger_current: too many arguments.",
3578 {
"ledger_current",
"today"},
3581 "method" : "ledger_current",
3584 "error" : "badSyntax",
3586 "error_message" : "Syntax error."
3593 {
"ledger_header: ledger index.",
3595 {
"ledger_header",
"4294967295"},
3598 "method" : "ledger_header",
3601 "api_version" : %API_VER%,
3602 "ledger_index" : 4294967295
3606 {"ledger_header: ledger hash.",
3608 {
"ledger_header",
"ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789"},
3611 "method" : "ledger_header",
3614 "api_version" : %API_VER%,
3615 "ledger_hash" : "ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789"
3619 {"ledger_header: too few arguments.",
3626 "method" : "ledger_header",
3629 "error" : "badSyntax",
3631 "error_message" : "Syntax error."
3635 {"ledger_header: too many arguments.",
3637 {
"ledger_header",
"4294967295",
"spare"},
3640 "method" : "ledger_header",
3643 "error" : "badSyntax",
3645 "error_message" : "Syntax error."
3649 {"ledger_header: text ledger index.",
3651 {
"ledger_header",
"current"},
3654 "method" : "ledger_header",
3657 "api_version" : %API_VER%,
3662 {"ledger_header: ledger index too small.",
3664 {
"ledger_header",
"-1"},
3667 "method" : "ledger_header",
3670 "api_version" : %API_VER%,
3675 {"ledger_header: ledger index too big.",
3677 {
"ledger_header",
"4294967296"},
3680 "method" : "ledger_header",
3683 "api_version" : %API_VER%,
3691 {
"ledger_request: ledger index.",
3693 {
"ledger_request",
"4294967295"},
3696 "method" : "ledger_request",
3699 "api_version" : %API_VER%,
3700 "ledger_index" : 4294967295
3704 {"ledger_request: ledger hash.",
3706 {
"ledger_request",
"ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789"},
3709 "method" : "ledger_request",
3712 "api_version" : %API_VER%,
3713 "ledger_hash" : "ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789"
3717 {"ledger_request: too few arguments.",
3724 "method" : "ledger_request",
3727 "error" : "badSyntax",
3729 "error_message" : "Syntax error."
3733 {"ledger_request: too many arguments.",
3735 {
"ledger_request",
"4294967295",
"spare"},
3738 "method" : "ledger_request",
3741 "error" : "badSyntax",
3743 "error_message" : "Syntax error."
3747 {"ledger_request: text ledger index.",
3749 {
"ledger_request",
"current"},
3752 "method" : "ledger_request",
3755 "api_version" : %API_VER%,
3760 {"ledger_request: ledger index too small.",
3762 {
"ledger_request",
"-1"},
3765 "method" : "ledger_request",
3768 "api_version" : %API_VER%,
3773 {"ledger_request: ledger index too big.",
3775 {
"ledger_request",
"4294967296"},
3778 "method" : "ledger_request",
3781 "api_version" : %API_VER%,
3789 {
"log_level: minimal.",
3796 "method" : "log_level",
3799 "api_version" : %API_VER%,
3803 {"log_level: fatal.",
3805 {
"log_level",
"fatal"},
3808 "method" : "log_level",
3811 "api_version" : %API_VER%,
3812 "severity" : "fatal"
3816 {"log_level: error.",
3818 {
"log_level",
"error"},
3821 "method" : "log_level",
3824 "api_version" : %API_VER%,
3825 "severity" : "error"
3829 {"log_level: warn.",
3831 {
"log_level",
"warn"},
3834 "method" : "log_level",
3837 "api_version" : %API_VER%,
3842 {"log_level: debug.",
3844 {
"log_level",
"debug"},
3847 "method" : "log_level",
3850 "api_version" : %API_VER%,
3851 "severity" : "debug"
3855 {"log_level: trace.",
3857 {
"log_level",
"trace"},
3860 "method" : "log_level",
3863 "api_version" : %API_VER%,
3864 "severity" : "trace"
3868 {"log_level: base partition.",
3870 {
"log_level",
"base",
"trace"},
3873 "method" : "log_level",
3876 "api_version" : %API_VER%,
3877 "partition" : "base",
3878 "severity" : "trace"
3882 {"log_level: partition_name.",
3884 {
"log_level",
"partition_name",
"fatal"},
3887 "method" : "log_level",
3890 "api_version" : %API_VER%,
3891 "partition" : "partition_name",
3892 "severity" : "fatal"
3896 {"log_level: too many arguments.",
3898 {
"log_level",
"partition_name",
"fatal",
"extra"},
3901 "method" : "log_level",
3904 "error" : "badSyntax",
3906 "error_message" : "Syntax error."
3910 {"log_level: invalid severity.",
3912 {
"log_level",
"err"},
3915 "method" : "log_level",
3918 "api_version" : %API_VER%,
3923 {"log_level: swap partition name and severity.",
3932 "method" : "log_level",
3935 "api_version" : %API_VER%,
3936 "partition" : "fatal",
3937 "severity" : "partition_name"
3944 {
"logrotate: minimal.",
3951 "method" : "logrotate",
3954 "api_version" : %API_VER%,
3958 {"logrotate: too many arguments.",
3960 {
"logrotate",
"extra"},
3963 "method" : "logrotate",
3966 "error" : "badSyntax",
3968 "error_message" : "Syntax error."
3975 {
"owner_info: minimal.",
3977 {
"owner_info",
"rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh"},
3980 "method" : "owner_info",
3983 "api_version" : %API_VER%,
3984 "account" : "rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh"
3988 {"owner_info: with numeric ledger index.",
3990 {
"owner_info",
"rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh",
"987654321"},
3993 "method" : "owner_info",
3996 "api_version" : %API_VER%,
3997 "account" : "rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh",
3998 "ledger_index" : 987654321
4002 {"owner_info: with text ledger index.",
4004 {
"owner_info",
"rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh",
"validated"},
4007 "method" : "owner_info",
4010 "api_version" : %API_VER%,
4011 "account" : "rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh",
4012 "ledger_index" : "validated"
4016 {"owner_info: with ledger hash.",
4019 "rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh",
4020 "0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF"},
4023 "method" : "owner_info",
4026 "api_version" : %API_VER%,
4027 "account" : "rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh",
4028 "ledger_hash" : "0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF"
4032 {"owner_info: with ledger index.",
4034 {
"owner_info",
"rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh",
"validated"},
4037 "method" : "owner_info",
4040 "account" : "rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh",
4041 "api_version" : %API_VER%,
4042 "ledger_index" : "validated"
4046 {"owner_info: too few arguments.",
4053 "method" : "owner_info",
4056 "error" : "badSyntax",
4058 "error_message" : "Syntax error."
4062 {"owner_info: too many arguments.",
4066 "rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh",
4073 "method" : "owner_info",
4076 "error" : "badSyntax",
4078 "error_message" : "Syntax error."
4083 "owner_info: invalid accountID.",
4091 "method" : "owner_info",
4094 "error" : "actMalformed",
4096 "error_message" : "Account malformed."
4104 "owner_info: invalid ledger selection.",
4106 {
"owner_info",
"rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh",
"no_ledger"},
4109 "method" : "owner_info",
4112 "api_version" : %API_VER%,
4113 "account" : "rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh",
4122 "owner_info: invalid ledger selection.",
4124 {
"owner_info",
"rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh",
"no_ledger"},
4127 "method" : "owner_info",
4130 "account" : "rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh",
4131 "api_version" : %API_VER%,
4150 "api_version" : %API_VER%,
4154 {"peers: too many arguments.",
4162 "error" : "badSyntax",
4164 "error_message" : "Syntax error."
4171 {
"peer_reservations_add: minimal.",
4173 {
"peer_reservations_add",
"public_key_string"},
4176 "method" : "peer_reservations_add",
4179 "api_version" : %API_VER%,
4180 "public_key" : "public_key_string"
4184 {"peer_reservations_add: with description.",
4186 {
"peer_reservations_add",
"public_key_string",
"public_key_description"},
4189 "method" : "peer_reservations_add",
4192 "api_version" : %API_VER%,
4193 "description" : "public_key_description",
4194 "public_key" : "public_key_string"
4198 {"peer_reservations_add: too few arguments.",
4200 {
"peer_reservations_add"},
4203 "method" : "peer_reservations_add",
4206 "error" : "badSyntax",
4208 "error_message" : "Syntax error."
4212 {"peer_reservations_add: too many arguments.",
4214 {
"peer_reservations_add",
"public_key_string",
"public_key_description",
"spare"},
4217 "method" : "peer_reservations_add",
4220 "error" : "badSyntax",
4222 "error_message" : "Syntax error."
4229 {
"peer_reservations_del: minimal.",
4231 {
"peer_reservations_del",
"public_key_string"},
4234 "method" : "peer_reservations_del",
4237 "api_version" : %API_VER%,
4238 "public_key" : "public_key_string"
4242 {"peer_reservations_del: too few arguments.",
4244 {
"peer_reservations_del"},
4247 "method" : "peer_reservations_del",
4250 "error" : "badSyntax",
4252 "error_message" : "Syntax error."
4256 {"peer_reservations_del: too many arguments.",
4258 {
"peer_reservations_del",
"public_key_string",
"public_key_description",
"spare"},
4261 "method" : "peer_reservations_del",
4264 "error" : "badSyntax",
4266 "error_message" : "Syntax error."
4283 "api_version" : %API_VER%,
4287 {"ping: too many arguments.",
4295 "error" : "badSyntax",
4297 "error_message" : "Syntax error."
4314 "api_version" : %API_VER%,
4319 "print: extra argument.",
4327 "api_version" : %API_VER%,
4328 "params" : [ "extra" ]
4332 {"print: too many arguments.",
4334 {
"print",
"extra1",
"extra2"},
4340 "error" : "badSyntax",
4342 "error_message" : "Syntax error."
4349 {
"random: minimal.",
4356 "method" : "random",
4359 "api_version" : %API_VER%,
4363 {"random: too many arguments.",
4365 {
"random",
"extra"},
4368 "method" : "random",
4371 "error" : "badSyntax",
4373 "error_message" : "Syntax error."
4380 {
"ripple_path_find: minimal.",
4384 R
"({"json_argument":true})",
4388 "method" : "ripple_path_find",
4391 "api_version" : %API_VER%,
4392 "json_argument" : true
4396 {"ripple_path_find: ledger index.",
4398 {
"ripple_path_find", R
"({"json_argument":true})", "4294967295"},
4401 "method" : "ripple_path_find",
4404 "api_version" : %API_VER%,
4405 "json_argument" : true,
4406 "ledger_index" : 4294967295
4410 {"ripple_path_find: text ledger index.",
4412 {
"ripple_path_find", R
"({"json_argument":true})", "closed"},
4415 "method" : "ripple_path_find",
4418 "api_version" : %API_VER%,
4419 "json_argument" : true,
4420 "ledger_index" : "closed"
4424 {"ripple_path_find: ledger hash.",
4426 {
"ripple_path_find",
4427 R
"({"json_argument":true})",
4428 "0123456789ABCDEFGHIJKLMNOPQRSTUV0123456789ABCDEFGHIJKLMNOPQRSTUV"},
4431 "method" : "ripple_path_find",
4434 "api_version" : %API_VER%,
4435 "json_argument" : true,
4436 "ledger_hash" : "0123456789ABCDEFGHIJKLMNOPQRSTUV0123456789ABCDEFGHIJKLMNOPQRSTUV"
4441 {"ripple_path_find: too few arguments.",
4448 "method" : "ripple_path_find",
4451 "error" : "badSyntax",
4453 "error_message" : "Syntax error."
4457 {"ripple_path_find: too many arguments.",
4459 {
"ripple_path_find", R
"({"json_argument":true})", "current",
"extra"},
4462 "method" : "ripple_path_find",
4465 "error" : "badSyntax",
4467 "error_message" : "Syntax error."
4471 {"ripple_path_find: invalid json (note extra comma).",
4475 R
"({"json_argument":true,})",
4479 "method" : "ripple_path_find",
4482 "error" : "invalidParams",
4484 "error_message" : "Invalid parameters."
4488 {"ripple_path_find: ledger index too small.",
4490 {
"ripple_path_find", R
"({"json_argument":true})", "-1"},
4493 "method" : "ripple_path_find",
4496 "api_version" : %API_VER%,
4497 "json_argument" : true,
4502 {"ripple_path_find: ledger index too big.",
4504 {
"ripple_path_find", R
"({"json_argument":true})", "4294967296"},
4507 "method" : "ripple_path_find",
4510 "api_version" : %API_VER%,
4511 "json_argument" : true,
4516 {"ripple_path_find: invalid text ledger index.",
4518 {
"ripple_path_find", R
"({"json_argument":true})", "cur"},
4521 "method" : "ripple_path_find",
4524 "api_version" : %API_VER%,
4525 "json_argument" : true,
4538 R
"({"json_argument":true})",
4545 "api_version" : %API_VER%,
4546 "secret" : "my_secret",
4548 "json_argument" : true
4555 {
"sign",
"my_secret", R
"({"json_argument":true})", "offline"},
4561 "api_version" : %API_VER%,
4563 "secret" : "my_secret",
4565 "json_argument" : true
4570 {"sign: too few arguments.",
4572 {
"sign",
"contents_of_blob"},
4578 "error" : "badSyntax",
4580 "error_message" : "Syntax error."
4584 {"sign: offline flag with signature_target.",
4586 {
"sign",
"my_secret", R
"({"json_argument":true})", "offline",
"extra"},
4592 "api_version" : %API_VER%,
4594 "secret" : "my_secret",
4595 "signature_target" : "extra",
4598 "json_argument" : true
4603 {"sign: too many arguments.",
4607 R
"({"json_argument":true})",
4609 "CounterpartySignature",
4616 "error" : "badSyntax",
4618 "error_message" : "Syntax error."
4622 {"sign: invalid JSON (note extra comma).",
4627 R
"({"json_argument":true,})",
4634 "error" : "invalidParams",
4636 "error_message" : "Invalid parameters."
4640 {"sign: misspelled offline flag interpreted as signature_target.",
4642 {
"sign",
"my_secret", R
"({"json_argument":true})", "offlin"},
4648 "api_version" : %API_VER%,
4649 "secret" : "my_secret",
4650 "signature_target" : "offlin",
4653 "json_argument" : true
4661 {
"sign_for: minimal.",
4665 "rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh",
4667 R
"({"json_argument":true})",
4671 "method" : "sign_for",
4674 "api_version" : %API_VER%,
4675 "account" : "rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh",
4676 "secret" : "my_secret",
4678 "json_argument" : true
4683 {"sign_for: offline.",
4686 "rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh",
4688 R
"({"json_argument":true})",
4692 "method" : "sign_for",
4695 "api_version" : %API_VER%,
4696 "account" : "rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh",
4698 "secret" : "my_secret",
4700 "json_argument" : true
4705 {"sign_for: too few arguments.",
4709 "rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh",
4714 "method" : "sign_for",
4717 "error" : "badSyntax",
4719 "error_message" : "Syntax error."
4723 {"sign_for: too many arguments.",
4726 "rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh",
4728 R
"({"json_argument":true})",
4733 "method" : "sign_for",
4736 "error" : "badSyntax",
4738 "error_message" : "Syntax error."
4742 {"sign_for: invalid json (note extra comma).",
4746 "rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh",
4748 R
"({"json_argument":true,})",
4752 "method" : "sign_for",
4755 "error" : "invalidParams",
4757 "error_message" : "Invalid parameters."
4761 {"sign_for: invalid final argument.",
4764 "rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh",
4766 R
"({"json_argument":true})",
4770 "method" : "sign_for",
4773 "error" : "invalidParams",
4775 "error_message" : "Invalid parameters."
4784 {
"submit",
"the blob is unvalidated and may be any length..."},
4787 "method" : "submit",
4790 "api_version" : %API_VER%,
4791 "tx_blob" : "the blob is unvalidated and may be any length..."
4800 R
"({"json_argument":true})",
4804 "method" : "submit",
4807 "api_version" : %API_VER%,
4808 "secret" : "my_secret",
4810 "json_argument" : true
4815 {"submit: too few arguments.",
4822 "method" : "submit",
4825 "error" : "badSyntax",
4827 "error_message" : "Syntax error."
4832 "submit: four arguments.",
4834 {
"submit",
"my_secret", R
"({"json_argument":true})", "offline"},
4837 "method" : "submit",
4840 "api_version" : %API_VER%,
4842 "secret" : "my_secret",
4844 "json_argument" : true
4849 {"submit: offline flag with signature_target.",
4851 {
"submit",
"my_secret", R
"({"json_argument":true})", "offline",
"extra"},
4854 "method" : "submit",
4857 "api_version" : %API_VER%,
4859 "secret" : "my_secret",
4860 "signature_target" : "extra",
4863 "json_argument" : true
4868 {"submit: too many arguments.",
4872 R
"({"json_argument":true})",
4874 "CounterpartySignature",
4878 "method" : "submit",
4881 "error" : "badSyntax",
4883 "error_message" : "Syntax error."
4887 {"submit: invalid json (note extra comma).",
4892 R
"({"json_argument":true,})",
4896 "method" : "submit",
4899 "error" : "invalidParams",
4901 "error_message" : "Invalid parameters."
4905 {"submit: misspelled offline flag interpreted as signature_target.",
4907 {
"submit",
"my_secret", R
"({"json_argument":true})", "offlne"},
4910 "method" : "submit",
4913 "api_version" : %API_VER%,
4914 "secret" : "my_secret",
4915 "signature_target" : "offlne",
4918 "json_argument" : true
4926 {
"submit_multisigned: json.",
4929 "submit_multisigned",
4930 R
"({"json_argument":true})",
4934 "method" : "submit_multisigned",
4937 "api_version" : %API_VER%,
4939 "json_argument" : true
4944 {"submit_multisigned: too few arguments.",
4947 "submit_multisigned",
4951 "method" : "submit_multisigned",
4954 "error" : "badSyntax",
4956 "error_message" : "Syntax error."
4960 {"submit_multisigned: too many arguments.",
4962 {
"submit_multisigned", R
"({"json_argument":true})", "extra"},
4965 "method" : "submit_multisigned",
4968 "error" : "badSyntax",
4970 "error_message" : "Syntax error."
4974 {"submit_multisigned: invalid json (note extra comma).",
4977 "submit_multisigned",
4978 R
"({"json_argument":true,})",
4982 "method" : "submit_multisigned",
4985 "error" : "invalidParams",
4987 "error_message" : "Invalid parameters."
4995 {
"server_info: minimal.",
5002 "method" : "server_info",
5005 "api_version" : %API_VER%,
5009 {"server_info: counters.",
5011 {
"server_info",
"counters"},
5014 "method" : "server_info",
5017 "api_version" : %API_VER%,
5022 {"server_info: too many arguments.",
5024 {
"server_info",
"counters",
"extra"},
5027 "method" : "server_info",
5030 "error" : "badSyntax",
5032 "error_message" : "Syntax error."
5036 {"server_info: non-counters argument.",
5038 {
"server_info",
"counter"},
5041 "method" : "server_info",
5044 "api_version" : %API_VER%,
5051 {
"server_state: minimal.",
5058 "method" : "server_state",
5061 "api_version" : %API_VER%,
5065 {"server_state: counters.",
5067 {
"server_state",
"counters"},
5070 "method" : "server_state",
5073 "api_version" : %API_VER%,
5078 {"server_state: too many arguments.",
5080 {
"server_state",
"counters",
"extra"},
5083 "method" : "server_state",
5086 "error" : "badSyntax",
5088 "error_message" : "Syntax error."
5092 {"server_state: non-counters argument.",
5094 {
"server_state",
"counter"},
5097 "method" : "server_state",
5100 "api_version" : %API_VER%,
5117 "api_version" : %API_VER%,
5121 {"stop: too many arguments.",
5129 "error" : "badSyntax",
5131 "error_message" : "Syntax error."
5138 {
"transaction_entry: ledger index.",
5140 {
"transaction_entry",
5141 "0123456789ABCDEFGHIJKLMNOPQRSTUV0123456789ABCDEFGHIJKLMNOPQRSTUV",
5145 "method" : "transaction_entry",
5148 "api_version" : %API_VER%,
5149 "ledger_index" : 4294967295,
5150 "tx_hash" : "0123456789ABCDEFGHIJKLMNOPQRSTUV0123456789ABCDEFGHIJKLMNOPQRSTUV"
5154 {"transaction_entry: text ledger index.",
5156 {
"transaction_entry",
5157 "0123456789ABCDEFGHIJKLMNOPQRSTUV0123456789ABCDEFGHIJKLMNOPQRSTUV",
5161 "method" : "transaction_entry",
5164 "api_version" : %API_VER%,
5165 "ledger_index" : "current",
5166 "tx_hash" : "0123456789ABCDEFGHIJKLMNOPQRSTUV0123456789ABCDEFGHIJKLMNOPQRSTUV"
5170 {"transaction_entry: ledger hash.",
5172 {
"transaction_entry",
5173 "0123456789ABCDEFGHIJKLMNOPQRSTUV0123456789ABCDEFGHIJKLMNOPQRSTUV",
5174 "VUTSRQPONMLKJIHGFEDCBA9876543210VUTSRQPONMLKJIHGFEDCBA9876543210"},
5177 "method" : "transaction_entry",
5180 "api_version" : %API_VER%,
5181 "ledger_hash" : "VUTSRQPONMLKJIHGFEDCBA9876543210VUTSRQPONMLKJIHGFEDCBA9876543210",
5182 "tx_hash" : "0123456789ABCDEFGHIJKLMNOPQRSTUV0123456789ABCDEFGHIJKLMNOPQRSTUV"
5186 {"transaction_entry: too few arguments.",
5189 "transaction_entry",
5190 "0123456789ABCDEFGHIJKLMNOPQRSTUV0123456789ABCDEFGHIJKLMNOPQRSTUV",
5194 "method" : "transaction_entry",
5197 "error" : "badSyntax",
5199 "error_message" : "Syntax error."
5203 {"transaction_entry: too many arguments.",
5205 {
"transaction_entry",
5206 "0123456789ABCDEFGHIJKLMNOPQRSTUV0123456789ABCDEFGHIJKLMNOPQRSTUV",
5211 "method" : "transaction_entry",
5214 "error" : "badSyntax",
5216 "error_message" : "Syntax error."
5220 {"transaction_entry: short tx_hash.",
5223 "transaction_entry",
5224 "123456789ABCDEFGHIJKLMNOPQRSTUV0123456789ABCDEFGHIJKLMNOPQRSTUV",
5229 "method" : "transaction_entry",
5232 "error" : "invalidParams",
5234 "error_message" : "Invalid parameters."
5238 {"transaction_entry: long tx_hash.",
5241 "transaction_entry",
5242 "0123456789ABCDEFGHIJKLMNOPQRSTUV0123456789ABCDEFGHIJKLMNOPQRSTUVW",
5247 "method" : "transaction_entry",
5250 "error" : "invalidParams",
5252 "error_message" : "Invalid parameters."
5256 {"transaction_entry: small ledger index.",
5259 "transaction_entry",
5260 "0123456789ABCDEFGHIJKLMNOPQRSTUV0123456789ABCDEFGHIJKLMNOPQRSTUV",
5265 "method" : "transaction_entry",
5268 "error" : "invalidParams",
5270 "error_message" : "Invalid parameters."
5274 {"transaction_entry: large ledger index.",
5277 "transaction_entry",
5278 "0123456789ABCDEFGHIJKLMNOPQRSTUV0123456789ABCDEFGHIJKLMNOPQRSTUV",
5283 "method" : "transaction_entry",
5286 "error" : "invalidParams",
5288 "error_message" : "Invalid parameters."
5292 {"transaction_entry: short ledger hash.",
5295 "transaction_entry",
5296 "0123456789ABCDEFGHIJKLMNOPQRSTUV0123456789ABCDEFGHIJKLMNOPQRSTUV",
5297 "VUTSRQPONMLKJIHGFEDCBA9876543210VUTSRQPONMLKJIHGFEDCBA987654321",
5301 "method" : "transaction_entry",
5304 "error" : "invalidParams",
5306 "error_message" : "Invalid parameters."
5310 {"transaction_entry: long ledger hash.",
5313 "transaction_entry",
5314 "0123456789ABCDEFGHIJKLMNOPQRSTUV0123456789ABCDEFGHIJKLMNOPQRSTUV",
5315 "VUTSRQPONMLKJIHGFEDCBA9876543210VUTSRQPONMLKJIHGFEDCBA9876543210Z",
5319 "method" : "transaction_entry",
5322 "error" : "invalidParams",
5324 "error_message" : "Invalid parameters."
5331 {
"tx: ctid. minimal",
5333 {
"tx",
"FFFFFFFFFFFFFFFF",
"1",
"2"},
5339 "api_version" : %API_VER%,
5340 "ctid" : "FFFFFFFFFFFFFFFF",
5346 {"tx: ctid. binary",
5348 {
"tx",
"FFFFFFFFFFFFFFFF",
"binary",
"1",
"2"},
5354 "api_version" : %API_VER%,
5356 "ctid" : "FFFFFFFFFFFFFFFF",
5364 {
"tx",
"transaction_hash_is_not_validated"},
5370 "api_version" : %API_VER%,
5371 "transaction" : "transaction_hash_is_not_validated"
5377 {
"tx",
"transaction_hash_is_not_validated",
"binary"},
5383 "api_version" : %API_VER%,
5385 "transaction" : "transaction_hash_is_not_validated"
5389 {"tx: too few arguments.",
5399 "error" : "badSyntax",
5401 "error_message" : "Syntax error."
5405 {"tx: too many arguments.",
5407 {
"tx",
"transaction_hash_is_not_validated",
"binary",
"1",
"2",
"extra"},
5413 "error" : "badSyntax",
5415 "error_message" : "Syntax error."
5419 {"tx: invalid final argument is apparently ignored.",
5421 {
"tx",
"transaction_hash_is_not_validated",
"bin"},
5427 "api_version" : %API_VER%,
5428 "transaction" : "transaction_hash_is_not_validated"
5435 {
"tx_history: minimal.",
5437 {
"tx_history",
"0"},
5440 "method" : "tx_history",
5443 "api_version" : %API_VER%,
5448 {"tx_history: too few arguments.",
5455 "method" : "tx_history",
5458 "error" : "badSyntax",
5460 "error_message" : "Syntax error."
5464 {"tx_history: too many arguments.",
5466 {
"tx_history",
"0",
"1"},
5469 "method" : "tx_history",
5472 "error" : "badSyntax",
5474 "error_message" : "Syntax error."
5480 "tx_history: start too small.",
5482 {
"tx_history",
"-1"},
5488 "tx_history: start too big.",
5490 {
"tx_history",
"4294967296"},
5496 "tx_history: start not integer.",
5498 {
"tx_history",
"beginning"},
5505 {
"unl_list: minimal.",
5512 "method" : "unl_list",
5515 "api_version" : %API_VER%,
5519 {"unl_list: too many arguments.",
5521 {
"unl_list",
"extra"},
5524 "method" : "unl_list",
5527 "error" : "badSyntax",
5529 "error_message" : "Syntax error."
5536 {
"validation_create: minimal.",
5539 "validation_create",
5543 "method" : "validation_create",
5546 "api_version" : %API_VER%,
5550 {"validation_create: with secret.",
5552 {
"validation_create",
"the form of the secret is not validated"},
5555 "method" : "validation_create",
5558 "api_version" : %API_VER%,
5559 "secret" : "the form of the secret is not validated"
5563 {"validation_create: too many arguments.",
5565 {
"validation_create",
"the form of the secret is not validated",
"extra"},
5568 "method" : "validation_create",
5571 "error" : "badSyntax",
5573 "error_message" : "Syntax error."
5580 {
"version: minimal.",
5587 "method" : "version",
5590 "api_version" : %API_VER%,
5594 {"version: too many arguments.",
5596 {
"version",
"extra"},
5599 "method" : "version",
5602 "error" : "badSyntax",
5604 "error_message" : "Syntax error."
5611 {
"wallet_propose: minimal.",
5618 "method" : "wallet_propose",
5621 "api_version" : %API_VER%,
5625 {"wallet_propose: with passphrase.",
5627 {
"wallet_propose",
"the form of the passphrase is not validated"},
5630 "method" : "wallet_propose",
5633 "api_version" : %API_VER%,
5634 "passphrase" : "the form of the passphrase is not validated"
5638 {"wallet_propose: too many arguments.",
5640 {
"wallet_propose",
"the form of the passphrase is not validated",
"extra"},
5643 "method" : "wallet_propose",
5646 "error" : "badSyntax",
5648 "error_message" : "Syntax error."
5655 {
"internal: minimal.",
5657 {
"internal",
"command_name"},
5660 "method" : "internal",
5663 "api_version" : %API_VER%,
5664 "internal_command" : "command_name",
5669 {"internal: with parameters.",
5671 {
"internal",
"command_name",
"string_arg",
"1",
"-1",
"4294967296",
"3.14159"},
5674 "method" : "internal",
5677 "api_version" : %API_VER%,
5678 "internal_command" : "command_name",
5679 "params" : [ "string_arg", "1", "-1", "4294967296", "3.14159" ]
5683 {"internal: too few arguments.",
5690 "method" : "internal",
5693 "error" : "badSyntax",
5695 "error_message" : "Syntax error."
5702 {
"path_find: minimal.",
5709 "method" : "path_find",
5712 "error" : "noEvents",
5714 "error_message" : "Current transport does not support events."
5718 {"path_find: with arguments.",
5720 {
"path_find",
"string_arg",
"1",
"-1",
"4294967296",
"3.14159"},
5723 "method" : "path_find",
5726 "error" : "noEvents",
5728 "error_message" : "Current transport does not support events."
5735 {
"subscribe: minimal.",
5742 "method" : "subscribe",
5745 "error" : "noEvents",
5747 "error_message" : "Current transport does not support events."
5751 {"subscribe: with arguments.",
5753 {
"subscribe",
"string_arg",
"1",
"-1",
"4294967296",
"3.14159"},
5756 "method" : "subscribe",
5759 "error" : "noEvents",
5761 "error_message" : "Current transport does not support events."
5768 {
"unsubscribe: minimal.",
5775 "method" : "unsubscribe",
5778 "error" : "noEvents",
5780 "error_message" : "Current transport does not support events."
5784 {"unsubscribe: with arguments.",
5786 {
"unsubscribe",
"string_arg",
"1",
"-1",
"4294967296",
"3.14159"},
5789 "method" : "unsubscribe",
5792 "error" : "noEvents",
5794 "error_message" : "Current transport does not support events."
5801 {
"unknown_command: minimal.",
5808 "method" : "unknown_command",
5811 "api_version" : %API_VER%,
5815 {"unknown_command: with arguments.",
5817 {
"unknown_command",
"string_arg",
"1",
"-1",
"4294967296",
"3.14159"},
5820 "method" : "unknown_command",
5823 "api_version" : %API_VER%,
5824 "params" : [ "string_arg", "1", "-1", "4294967296", "3.14159" ]
5834 static auto const kPlaceHolder =
"%API_VER%";
5836 boost::replace_all(jr, kPlaceHolder, versionStr);
5845 cfg->networkId = networkID;
5856 testcase <<
"RPCCall API version " << apiVersion;
5867 if (!BEAST_EXPECT(!rpcCallTest.exp.empty()))
5872 char const*
const expVersioned =
5875 : rpcCallTest.exp.back();
5893 fail(rpcCallTest.description, __FILE__, rpcCallTest.line);
5905 if (
json.isMember(jss::params) &&
json[jss::params].isArray() &&
5906 json[jss::params].size() > 0 &&
json[jss::params][0u].isObject())
5908 json[jss::params][0u].removeMember(jss::error_code);
5921 fail(rpcCallTest.description, __FILE__, rpcCallTest.line);
void pass()
Record a successful test condition.
void fail(String const &reason, char const *file, int line)
Record a failure.
TestcaseT testcase
Memberspace for declaring test cases.
Unserialize a JSON document into a Value.
bool parse(std::string const &document, Value &root)
Read a Value from a JSON document.
void run() override
Runs the suite.
void testRPCCall(unsigned apiVersion)
A transaction testing environment.
beast::Journal const journal
JSON (JavaScript Object Notation).
API version numbers used in later API versions.
static constexpr auto kApiMaximumValidVersion
static constexpr auto kApiMinimumSupportedVersion
std::unique_ptr< Config > envconfig()
creates and initializes a default configuration for jtx::Env
json::Value cmdToJSONRPC(std::vector< std::string > const &args, beast::Journal j, unsigned int apiVersion)
Given an xrpld unit test rpc command, return the corresponding JSON.
BEAST_DEFINE_TESTSUITE(AMMClawback, app, xrpl)
std::unique_ptr< Config > makeNetworkConfig(uint32_t networkID)
std::string updateAPIVersionString(char const *const req, unsigned apiVersion)
static RPCCallTestData const kRpcCallTestArray[]
Use hash_* containers for keys that do not need a cryptographically secure hashing algorithm.
void forAllApiVersions(Fn const &fn, Args &&... args)
std::vector< char const * > exp
RPCCallTestData & operator=(RPCCallTestData &&)=delete
RPCCallTestData(char const *description, int line, std::initializer_list< char const * > const &args, Exception throwsWhat, char const *exp)
RPCCallTestData(char const *description, int line, std::initializer_list< char const * > const &args, Exception throwsWhat, std::initializer_list< char const * > exp)
char const *const description
std::vector< char const * > const args
RPCCallTestData(RPCCallTestData &&)=delete
RPCCallTestData & operator=(RPCCallTestData const &)=delete
RPCCallTestData(RPCCallTestData const &)=delete
Exception const throwsWhat