18 #include <ripple/beast/unit_test.h>
19 #include <ripple/json/json_reader.h>
20 #include <ripple/net/RPCCall.h>
21 #include <ripple/protocol/ErrorCodes.h>
22 #include <ripple/rpc/impl/RPCHelpers.h>
24 #include <test/jtx/utility.h>
26 #include <boost/algorithm/string.hpp>
50 char const* description_,
64 char const* description_,
89 {
"account_channels: minimal.",
91 {
"account_channels",
"rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh"},
94 "method" : "account_channels",
97 "api_version" : %API_VER%,
98 "account" : "rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh"
102 {"account_channels: account and ledger hash.",
105 "rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh",
106 "rD5MbavGfiSC5m7mkxy1FANuT7s3HxqpoF"},
109 "method" : "account_channels",
112 "api_version" : %API_VER%,
113 "account" : "rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh",
114 "destination_account" : "rD5MbavGfiSC5m7mkxy1FANuT7s3HxqpoF"
118 {"account_channels: account and ledger index.",
121 "rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh",
122 "r9emE59aTWb85t64dAebKrxYMBTpzK5yR7"},
125 "method" : "account_channels",
128 "api_version" : %API_VER%,
129 "account" : "rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh",
130 "destination_account" : "r9emE59aTWb85t64dAebKrxYMBTpzK5yR7"
134 {"account_channels: two accounts.",
137 "rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh",
138 "rnUy2SHTrB9DubsPmkJZUXTf5FcNDGrYEA"},
141 "method" : "account_channels",
144 "api_version" : %API_VER%,
145 "account" : "rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh",
146 "destination_account" : "rnUy2SHTrB9DubsPmkJZUXTf5FcNDGrYEA"
150 {"account_channels: two accounts and ledger hash.",
153 "rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh",
154 "rnUy2SHTrB9DubsPmkJZUXTf5FcNDGrYEA",
155 "0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF"},
158 "method" : "account_channels",
161 "api_version" : %API_VER%,
162 "account" : "rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh",
163 "destination_account" : "rnUy2SHTrB9DubsPmkJZUXTf5FcNDGrYEA",
164 "ledger_hash" : "0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF"
168 {"account_channels: two accounts and ledger index.",
171 "rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh",
172 "rnUy2SHTrB9DubsPmkJZUXTf5FcNDGrYEA",
176 "method" : "account_channels",
179 "api_version" : %API_VER%,
180 "account" : "rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh",
181 "destination_account" : "rnUy2SHTrB9DubsPmkJZUXTf5FcNDGrYEA",
182 "ledger_index" : 90210
186 {"account_channels: too few arguments.",
193 "method" : "account_channels",
196 "error" : "badSyntax",
198 "error_message" : "Syntax error."
202 {"account_channels: too many arguments.",
205 "rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh",
206 "rnUy2SHTrB9DubsPmkJZUXTf5FcNDGrYEA",
211 "method" : "account_channels",
214 "error" : "badSyntax",
216 "error_message" : "Syntax error."
220 {"account_channels: invalid accountID.",
228 "method" : "account_channels",
231 "error" : "actMalformed",
233 "error_message" : "Account malformed."
240 {
"account_currencies: minimal 1.",
242 {
"account_currencies",
"rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh"},
245 "method" : "account_currencies",
248 "api_version" : %API_VER%,
249 "account" : "rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh"
253 {"account_currencies: minimal 2.",
255 {
"account_currencies",
"racb4o3DrdYxuCfyVa6vsLb7vgju9RFbBr"},
258 "method" : "account_currencies",
261 "api_version" : %API_VER%,
262 "account" : "racb4o3DrdYxuCfyVa6vsLb7vgju9RFbBr"
266 {"account_currencies: ledger index.",
268 {
"account_currencies",
"rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh",
"42"},
271 "method" : "account_currencies",
274 "api_version" : %API_VER%,
275 "account" : "rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh",
280 {"account_currencies: validated ledger.",
282 {
"account_currencies",
"rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh",
"validated"},
285 "method" : "account_currencies",
288 "api_version" : %API_VER%,
289 "account" : "rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh",
290 "ledger_index" : "validated"
294 {"account_currencies: current ledger.",
296 {
"account_currencies",
"rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh",
"current"},
299 "method" : "account_currencies",
302 "account" : "rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh",
303 "api_version" : %API_VER%,
304 "ledger_index" : "current"
308 {"account_currencies: too few arguments.",
311 "account_currencies",
315 "method" : "account_currencies",
318 "error" : "badSyntax",
320 "error_message" : "Syntax error."
324 {"account_currencies: too many arguments.",
326 {
"account_currencies",
327 "rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh",
333 "method" : "account_currencies",
336 "error" : "badSyntax",
338 "error_message" : "Syntax error."
342 {"account_currencies: invalid second argument.",
344 {
"account_currencies",
"rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh",
"yup"},
347 "method" : "account_currencies",
350 "api_version" : %API_VER%,
351 "account" : "rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh",
357 "account_currencies: invalid accountID.",
360 "account_currencies",
365 "method" : "account_currencies",
368 "error" : "actMalformed",
370 "error_message" : "Account malformed."
378 {
"account_info: minimal.",
380 {
"account_info",
"rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh"},
383 "method" : "account_info",
386 "api_version" : %API_VER%,
387 "account" : "rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh"
391 {"account_info: with numeric ledger index.",
393 {
"account_info",
"rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh",
"77777"},
396 "method" : "account_info",
399 "api_version" : %API_VER%,
400 "account" : "rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh",
401 "ledger_index" : 77777
405 {"account_info: with text ledger index.",
407 {
"account_info",
"rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh",
"closed"},
410 "method" : "account_info",
413 "api_version" : %API_VER%,
414 "account" : "rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh",
415 "ledger_index" : "closed"
419 {"account_info: with ledger hash.",
422 "rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh",
423 "0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF"},
426 "method" : "account_info",
429 "api_version" : %API_VER%,
430 "account" : "rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh",
431 "ledger_hash" : "0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF"
435 {"account_info: with ledger index.",
437 {
"account_info",
"rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh",
"validated"},
440 "method" : "account_info",
443 "account" : "rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh",
444 "api_version" : %API_VER%,
445 "ledger_index" : "validated"
449 {"account_info: too few arguments.",
456 "method" : "account_info",
459 "error" : "badSyntax",
461 "error_message" : "Syntax error."
465 {"account_info: too many arguments.",
468 "rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh",
474 "method" : "account_info",
477 "error" : "badSyntax",
479 "error_message" : "Syntax error."
484 "account_info: invalid accountID.",
492 "method" : "account_info",
495 "error" : "actMalformed",
497 "error_message" : "Account malformed."
505 {
"account_lines: minimal.",
507 {
"account_lines",
"rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh"},
510 "method" : "account_lines",
513 "api_version" : %API_VER%,
514 "account" : "rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh",
518 {"account_lines: peer.",
521 "rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh",
522 "rnUy2SHTrB9DubsPmkJZUXTf5FcNDGrYEA"},
525 "method" : "account_lines",
528 "api_version" : %API_VER%,
529 "account" : "rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh",
530 "peer" : "rnUy2SHTrB9DubsPmkJZUXTf5FcNDGrYEA"
534 {"account_lines: peer and numeric ledger index.",
537 "rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh",
538 "rnUy2SHTrB9DubsPmkJZUXTf5FcNDGrYEA",
542 "method" : "account_lines",
545 "api_version" : %API_VER%,
546 "account" : "rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh",
547 "ledger_index" : 888888888,
548 "peer" : "rnUy2SHTrB9DubsPmkJZUXTf5FcNDGrYEA"
552 {"account_lines: peer and text ledger index.",
555 "rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh",
556 "rnUy2SHTrB9DubsPmkJZUXTf5FcNDGrYEA",
560 "method" : "account_lines",
563 "api_version" : %API_VER%,
564 "account" : "rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh",
565 "ledger_index" : "closed",
566 "peer" : "rnUy2SHTrB9DubsPmkJZUXTf5FcNDGrYEA"
570 {"account_lines: peer and ledger hash.",
573 "rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh",
574 "rnUy2SHTrB9DubsPmkJZUXTf5FcNDGrYEA",
575 "FFFFEEEEDDDDCCCCBBBBAAAA9999888877776666555544443333222211110000"},
578 "method" : "account_lines",
581 "api_version" : %API_VER%,
582 "account" : "rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh",
583 "ledger_hash" : "FFFFEEEEDDDDCCCCBBBBAAAA9999888877776666555544443333222211110000",
584 "peer" : "rnUy2SHTrB9DubsPmkJZUXTf5FcNDGrYEA"
588 {"account_lines: too few arguments.",
595 "method" : "account_lines",
598 "error" : "badSyntax",
600 "error_message" : "Syntax error."
605 "account_lines: four arguments.",
608 "rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh",
609 "rnUy2SHTrB9DubsPmkJZUXTf5FcNDGrYEA",
614 "method" : "account_lines",
617 "api_version" : %API_VER%,
618 "account" : "rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh",
619 "ledger_index" : 12345678,
620 "peer" : "rnUy2SHTrB9DubsPmkJZUXTf5FcNDGrYEA"
625 "account_lines: five arguments.",
628 "rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh",
629 "rnUy2SHTrB9DubsPmkJZUXTf5FcNDGrYEA",
632 "0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF"},
635 "method" : "account_lines",
638 "api_version" : %API_VER%,
639 "account" : "rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh",
640 "ledger_index" : 12345678,
641 "peer" : "rnUy2SHTrB9DubsPmkJZUXTf5FcNDGrYEA"
645 {"account_lines: too many arguments.",
648 "rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh",
649 "rnUy2SHTrB9DubsPmkJZUXTf5FcNDGrYEA",
652 "0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF",
656 "method" : "account_lines",
659 "error" : "badSyntax",
661 "error_message" : "Syntax error."
666 "account_lines: first invalid accountID.",
674 "method" : "account_lines",
677 "error" : "actMalformed",
679 "error_message" : "Account malformed."
685 "account_lines: second invalid accountID.",
689 "rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh",
694 "method" : "account_lines",
697 "api_version" : %API_VER%,
698 "account" : "rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh"
704 "account_lines: invalid ledger selector.",
707 "rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh",
708 "rnUy2SHTrB9DubsPmkJZUXTf5FcNDGrYEA",
712 "method" : "account_lines",
715 "api_version" : %API_VER%,
716 "account" : "rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh",
718 "peer" : "rnUy2SHTrB9DubsPmkJZUXTf5FcNDGrYEA"
726 {
"account_objects: minimal.",
728 {
"account_objects",
"rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh"},
731 "method" : "account_objects",
734 "api_version" : %API_VER%,
735 "account" : "rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh"
739 {"account_objects: with numeric ledger index.",
741 {
"account_objects",
"rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh",
"77777"},
744 "method" : "account_objects",
747 "api_version" : %API_VER%,
748 "account" : "rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh",
749 "ledger_index" : 77777
753 {"account_objects: with text ledger index.",
755 {
"account_objects",
"rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh",
"closed"},
758 "method" : "account_objects",
761 "api_version" : %API_VER%,
762 "account" : "rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh",
763 "ledger_index" : "closed"
767 {"account_objects: with ledger hash.",
770 "rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh",
771 "0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF"},
774 "method" : "account_objects",
777 "api_version" : %API_VER%,
778 "account" : "rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh",
779 "ledger_hash" : "0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF"
783 {"account_objects: with ledger index.",
785 {
"account_objects",
"rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh",
"validated"},
788 "method" : "account_objects",
791 "api_version" : %API_VER%,
792 "account" : "rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh",
793 "ledger_index" : "validated"
797 {"account_objects: too few arguments.",
804 "method" : "account_objects",
807 "error" : "badSyntax",
809 "error_message" : "Syntax error."
814 "account_objects: four arguments.",
818 "rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh",
825 "method" : "account_objects",
828 "api_version" : %API_VER%,
829 "account" : "rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh"
834 "account_objects: five arguments.",
838 "rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh",
846 "method" : "account_objects",
849 "api_version" : %API_VER%,
850 "account" : "rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh"
854 {"account_objects: too many arguments.",
858 "rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh",
867 "method" : "account_objects",
870 "error" : "badSyntax",
872 "error_message" : "Syntax error."
877 "account_objects: invalid accountID.",
885 "method" : "account_objects",
888 "error" : "actMalformed",
890 "error_message" : "Account malformed."
898 "account_objects: invalid ledger selection 1.",
900 {
"account_objects",
"rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh",
"no_ledger"},
903 "method" : "account_objects",
906 "api_version" : %API_VER%,
907 "account" : "rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh",
916 "account_objects: invalid ledger selection 2.",
918 {
"account_objects",
"rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh",
"no_ledger"},
921 "method" : "account_objects",
924 "api_version" : %API_VER%,
925 "account" : "rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh",
934 {
"account_offers: minimal.",
936 {
"account_offers",
"rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh"},
939 "method" : "account_offers",
942 "api_version" : %API_VER%,
943 "account" : "rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh"
947 {"account_offers: with numeric ledger index.",
949 {
"account_offers",
"rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh",
"987654321"},
952 "method" : "account_offers",
955 "api_version" : %API_VER%,
956 "account" : "rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh",
957 "ledger_index" : 987654321
961 {"account_offers: with text ledger index.",
963 {
"account_offers",
"rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh",
"validated"},
966 "method" : "account_offers",
969 "api_version" : %API_VER%,
970 "account" : "rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh",
971 "ledger_index" : "validated"
975 {"account_offers: with ledger hash.",
978 "rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh",
979 "0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF"},
982 "method" : "account_offers",
985 "api_version" : %API_VER%,
986 "account" : "rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh",
987 "ledger_hash" : "0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF"
991 {"account_offers: with ledger index.",
993 {
"account_offers",
"rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh",
"validated"},
996 "method" : "account_offers",
999 "api_version" : %API_VER%,
1000 "account" : "rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh",
1001 "ledger_index" : "validated"
1005 {"account_offers: too few arguments.",
1012 "method" : "account_offers",
1015 "error" : "badSyntax",
1017 "error_message" : "Syntax error."
1022 "account_offers: four arguments.",
1025 "rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh",
1030 "method" : "account_offers",
1033 "api_version" : %API_VER%,
1034 "account" : "rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh"
1038 {"account_offers: too many arguments.",
1042 "rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh",
1050 "method" : "account_offers",
1053 "error" : "badSyntax",
1055 "error_message" : "Syntax error."
1060 "account_offers: invalid accountID.",
1068 "method" : "account_offers",
1071 "error" : "actMalformed",
1073 "error_message" : "Account malformed."
1081 "account_offers: invalid ledger selection 1.",
1083 {
"account_offers",
"rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh",
"no_ledger"},
1086 "method" : "account_offers",
1089 "api_version" : %API_VER%,
1090 "account" : "rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh",
1099 "account_offers: invalid ledger selection 2.",
1101 {
"account_offers",
"rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh",
"no_ledger"},
1104 "method" : "account_offers",
1107 "api_version" : %API_VER%,
1108 "account" : "rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh",
1117 {
"account_tx: minimal.",
1119 {
"account_tx",
"rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh"},
1122 "method" : "account_tx",
1125 "api_version" : %API_VER%,
1126 "account" : "rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh",
1130 {"account_tx: ledger_index .",
1132 {
"account_tx",
"rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh",
"444"},
1135 "method" : "account_tx",
1138 "api_version" : %API_VER%,
1139 "account" : "rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh",
1140 "ledger_index" : 444
1144 {"account_tx: ledger_index plus trailing params.",
1147 "rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh",
1154 "method" : "account_tx",
1157 "api_version" : %API_VER%,
1158 "account" : "rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh",
1161 "descending" : true,
1162 "ledger_index" : 707
1166 {"account_tx: ledger_index_min and _max.",
1168 {
"account_tx",
"rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh",
"-1",
"-1"},
1171 "method" : "account_tx",
1174 "api_version" : %API_VER%,
1175 "account" : "rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh",
1176 "ledger_index_max" : -1,
1177 "ledger_index_min" : -1
1181 {"account_tx: ledger_index_min and _max plus trailing params.",
1184 "rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh",
1192 "method" : "account_tx",
1195 "api_version" : %API_VER%,
1196 "account" : "rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh",
1199 "descending" : true,
1200 "ledger_index_max" : 413,
1201 "ledger_index_min" : -1
1205 {"account_tx: ledger_index_min and _max plus limit.",
1207 {
"account_tx",
"rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh",
"247",
"-1",
"300"},
1210 "method" : "account_tx",
1213 "api_version" : %API_VER%,
1214 "account" : "rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh",
1215 "ledger_index_max" : -1,
1216 "ledger_index_min" : 247,
1221 {"account_tx: ledger_index_min and _max, limit, trailing args.",
1224 "rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh",
1233 "method" : "account_tx",
1236 "api_version" : %API_VER%,
1237 "account" : "rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh",
1240 "descending" : true,
1241 "ledger_index_max" : -1,
1242 "ledger_index_min" : 247,
1247 {"account_tx: ledger_index_min and _max plus limit and offset.",
1250 "rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh",
1257 "method" : "account_tx",
1260 "api_version" : %API_VER%,
1261 "account" : "rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh",
1262 "ledger_index_max" : 590,
1263 "ledger_index_min" : 589,
1269 {"account_tx: ledger_index_min and _max, limit, offset, trailing.",
1272 "rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh",
1281 "method" : "account_tx",
1284 "api_version" : %API_VER%,
1285 "account" : "rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh",
1287 "descending" : true,
1288 "ledger_index_max" : 590,
1289 "ledger_index_min" : 589,
1295 {"account_tx: too few arguments.",
1302 "method" : "account_tx",
1305 "error" : "badSyntax",
1307 "error_message" : "Syntax error."
1311 {"account_tx: too many arguments.",
1314 "rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh",
1325 "method" : "account_tx",
1328 "error" : "badSyntax",
1330 "error_message" : "Syntax error."
1335 "account_tx: invalid accountID.",
1337 {
"account_tx",
"rHb9CJAWyB4rj9!VRWn96DkukG4bwdtyTh"},
1340 "method" : "account_tx",
1343 "error" : "actMalformed",
1345 "error_message" : "Account malformed."
1352 "account_tx: invalid ledger.",
1354 {
"account_tx",
"rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh",
"-478.7"},
1357 "method" : "account_tx",
1360 "api_version" : %API_VER%,
1361 "account" : "rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh",
1368 "account_tx: max less than min.",
1370 {
"account_tx",
"rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh",
"580",
"579"},
1374 "method" : "account_tx",
1377 "error" : "lgrIdxsInvalid",
1379 "error_message" : "Ledger indexes invalid."
1384 "method" : "account_tx",
1387 "error" : "notSynced",
1389 "error_message" : "Not synced to the network."
1396 "account_tx: non-integer min.",
1398 {
"account_tx",
"rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh",
"Binary",
"-1"},
1404 "account_tx: non-integer max.",
1406 {
"account_tx",
"rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh",
"-1",
"counts"},
1412 "account_tx: non-integer offset.",
1415 "rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh",
1424 "account_tx: non-integer limit.",
1427 "rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh",
1436 "account_tx: RIPD-1570.",
1439 "rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh",
1451 {
"book_offers: minimal no issuer.",
1460 "method" : "book_offers",
1463 "api_version" : %API_VER%,
1473 {"book_offers: minimal with currency/issuer",
1477 "USD/rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh",
1478 "EUR/rnUy2SHTrB9DubsPmkJZUXTf5FcNDGrYEA",
1482 "method" : "book_offers",
1485 "api_version" : %API_VER%,
1488 "issuer" : "rnUy2SHTrB9DubsPmkJZUXTf5FcNDGrYEA"
1492 "issuer" : "rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh"
1499 "book_offers: add issuer.",
1501 {
"book_offers",
"USD",
"EUR",
"rnUy2SHTrB9DubsPmkJZUXTf5FcNDGrYEA"},
1504 "method" : "book_offers",
1507 "api_version" : %API_VER%,
1508 "issuer" : "rnUy2SHTrB9DubsPmkJZUXTf5FcNDGrYEA",
1518 {"book_offers: add issuer and numeric ledger index.",
1521 "USD/rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh",
1523 "rnUy2SHTrB9DubsPmkJZUXTf5FcNDGrYEA",
1527 "method" : "book_offers",
1530 "api_version" : %API_VER%,
1531 "issuer" : "rnUy2SHTrB9DubsPmkJZUXTf5FcNDGrYEA",
1532 "ledger_index" : 666,
1538 "issuer" : "rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh"
1543 {"book_offers: add issuer and text ledger index.",
1547 "EUR/rnUy2SHTrB9DubsPmkJZUXTf5FcNDGrYEA",
1548 "rnUy2SHTrB9DubsPmkJZUXTf5FcNDGrYEA",
1552 "method" : "book_offers",
1555 "api_version" : %API_VER%,
1556 "issuer" : "rnUy2SHTrB9DubsPmkJZUXTf5FcNDGrYEA",
1557 "ledger_index" : "current",
1560 "issuer" : "rnUy2SHTrB9DubsPmkJZUXTf5FcNDGrYEA"
1568 {"book_offers: add issuer and ledger hash.",
1571 "USD/rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh",
1572 "EUR/rnUy2SHTrB9DubsPmkJZUXTf5FcNDGrYEA",
1573 "rnUy2SHTrB9DubsPmkJZUXTf5FcNDGrYEA",
1574 "ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789"},
1577 "method" : "book_offers",
1580 "api_version" : %API_VER%,
1581 "issuer" : "rnUy2SHTrB9DubsPmkJZUXTf5FcNDGrYEA",
1582 "ledger_hash" : "ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789",
1585 "issuer" : "rnUy2SHTrB9DubsPmkJZUXTf5FcNDGrYEA"
1589 "issuer" : "rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh"
1594 {"book_offers: issuer, ledger hash, and limit.",
1598 "USD/rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh",
1599 "EUR/rnUy2SHTrB9DubsPmkJZUXTf5FcNDGrYEA",
1600 "rnUy2SHTrB9DubsPmkJZUXTf5FcNDGrYEA",
1601 "ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789",
1608 "method" : "book_offers",
1611 "api_version" : %API_VER%,
1612 "issuer" : "rnUy2SHTrB9DubsPmkJZUXTf5FcNDGrYEA",
1613 "ledger_hash" : "ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789",
1618 "issuer" : "rnUy2SHTrB9DubsPmkJZUXTf5FcNDGrYEA"
1622 "issuer" : "rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh"
1628 "book_offers: issuer, ledger hash, limit, and marker.",
1631 "USD/rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh",
1632 "EUR/rnUy2SHTrB9DubsPmkJZUXTf5FcNDGrYEA",
1633 "rnUy2SHTrB9DubsPmkJZUXTf5FcNDGrYEA",
1634 "ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789",
1640 "method" : "book_offers",
1643 "api_version" : %API_VER%,
1644 "issuer" : "rnUy2SHTrB9DubsPmkJZUXTf5FcNDGrYEA",
1645 "ledger_hash" : "ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789",
1647 "marker" : "MyMarker",
1651 "issuer" : "rnUy2SHTrB9DubsPmkJZUXTf5FcNDGrYEA"
1655 "issuer" : "rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh"
1660 {"book_offers: too few arguments.",
1667 "method" : "book_offers",
1670 "error" : "badSyntax",
1672 "error_message" : "Syntax error."
1676 {"book_offers: too many arguments.",
1679 "USD/rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh",
1680 "EUR/rnUy2SHTrB9DubsPmkJZUXTf5FcNDGrYEA",
1681 "rnUy2SHTrB9DubsPmkJZUXTf5FcNDGrYEA",
1682 "ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789",
1689 "method" : "book_offers",
1692 "error" : "badSyntax",
1694 "error_message" : "Syntax error."
1699 {"book_offers: taker pays no currency.",
1703 "/rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh",
1704 "EUR/rnUy2SHTrB9DubsPmkJZUXTf5FcNDGrYEA",
1708 "method" : "book_offers",
1711 "error" : "invalidParams",
1713 "error_message" : "Invalid currency/issuer '/rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh'"
1717 {"book_offers: taker gets no currency.",
1721 "USD/rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh",
1722 "/rnUy2SHTrB9DubsPmkJZUXTf5FcNDGrYEA",
1726 "method" : "book_offers",
1729 "error" : "invalidParams",
1731 "error_message" : "Invalid currency/issuer '/rnUy2SHTrB9DubsPmkJZUXTf5FcNDGrYEA'"
1735 {"book_offers: invalid issuer.",
1737 {
"book_offers",
"USD",
"EUR",
"not_a_valid_issuer"},
1740 "method" : "book_offers",
1743 "api_version" : %API_VER%,
1744 "issuer" : "not_a_valid_issuer",
1754 {"book_offers: invalid text ledger index.",
1758 "EUR/rnUy2SHTrB9DubsPmkJZUXTf5FcNDGrYEA",
1759 "rnUy2SHTrB9DubsPmkJZUXTf5FcNDGrYEA",
1763 "method" : "book_offers",
1766 "api_version" : %API_VER%,
1767 "issuer" : "rnUy2SHTrB9DubsPmkJZUXTf5FcNDGrYEA",
1771 "issuer" : "rnUy2SHTrB9DubsPmkJZUXTf5FcNDGrYEA"
1780 "book_offers: non-numeric limit.",
1784 "USD/rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh",
1785 "EUR/rnUy2SHTrB9DubsPmkJZUXTf5FcNDGrYEA",
1786 "rnUy2SHTrB9DubsPmkJZUXTf5FcNDGrYEA",
1787 "ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789",
1797 {
"can_delete: minimal.",
1804 "method" : "can_delete",
1807 "api_version" : %API_VER%,
1811 {"can_delete: ledger index.",
1819 "method" : "can_delete",
1822 "api_version" : %API_VER%,
1823 "can_delete" : 4294967295
1827 {"can_delete: ledger hash.",
1831 "FEDCBA9876543210FEDCBA9876543210FEDCBA9876543210FEDCBA9876543210",
1835 "method" : "can_delete",
1838 "api_version" : %API_VER%,
1839 "can_delete" : "FEDCBA9876543210FEDCBA9876543210FEDCBA9876543210FEDCBA9876543210"
1843 {"can_delete: always.",
1851 "method" : "can_delete",
1854 "api_version" : %API_VER%,
1855 "can_delete" : "always"
1859 {"can_delete: never.",
1867 "method" : "can_delete",
1870 "api_version" : %API_VER%,
1871 "can_delete" : "never"
1875 {"can_delete: now.",
1883 "method" : "can_delete",
1886 "api_version" : %API_VER%,
1887 "can_delete" : "now"
1891 {"can_delete: too many arguments.",
1893 {
"can_delete",
"always",
"never"},
1896 "method" : "can_delete",
1899 "error" : "badSyntax",
1901 "error_message" : "Syntax error."
1905 {"can_delete: invalid argument.",
1907 {
"can_delete",
"invalid"},
1910 "method" : "can_delete",
1913 "api_version" : %API_VER%,
1914 "can_delete" : "invalid"
1919 "can_delete: ledger index > 32 bits.",
1928 "can_delete: ledger hash with no alphas.",
1932 "0123456701234567012345670123456701234567012345670123456701234567",
1939 {
"channel_authorize: minimal.",
1941 {
"channel_authorize",
1942 "secret_can_be_anything",
1943 "0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF",
1944 "18446744073709551615"},
1947 "method" : "channel_authorize",
1950 "api_version" : %API_VER%,
1951 "amount" : "18446744073709551615",
1952 "channel_id" : "0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF",
1953 "secret" : "secret_can_be_anything"
1957 {"channel_authorize: too few arguments.",
1960 "channel_authorize",
1961 "secret_can_be_anything",
1962 "0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF",
1966 "method" : "channel_authorize",
1969 "error" : "badSyntax",
1971 "error_message" : "Syntax error."
1975 {"channel_authorize: too many arguments.",
1977 {
"channel_authorize",
1979 "0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF",
1985 "method" : "channel_authorize",
1988 "error" : "badSyntax",
1990 "error_message" : "Syntax error."
1994 {"channel_authorize: bad key type.",
1996 {
"channel_authorize",
1998 "0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF",
2003 "method" : "channel_authorize",
2006 "error" : "badKeyType",
2008 "error_message" : "Bad key type."
2012 {"channel_authorize: channel_id too short.",
2014 {
"channel_authorize",
2015 "secret_can_be_anything",
2016 "123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF",
2020 "method" : "channel_authorize",
2023 "error" : "channelMalformed",
2025 "error_message" : "Payment channel is malformed."
2029 {"channel_authorize: channel_id too long.",
2031 {
"channel_authorize",
2032 "secret_can_be_anything",
2033 "10123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF",
2037 "method" : "channel_authorize",
2040 "error" : "channelMalformed",
2042 "error_message" : "Payment channel is malformed."
2046 {"channel_authorize: channel_id not hex.",
2048 {
"channel_authorize",
2049 "secret_can_be_anything",
2050 "0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEZ",
2054 "method" : "channel_authorize",
2057 "error" : "channelMalformed",
2059 "error_message" : "Payment channel is malformed."
2063 {"channel_authorize: negative amount.",
2065 {
"channel_authorize",
2066 "secret_can_be_anything",
2067 "0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF",
2071 "method" : "channel_authorize",
2074 "error" : "channelAmtMalformed",
2076 "error_message" : "Payment channel amount is malformed."
2080 {"channel_authorize: amount > 64 bits.",
2082 {
"channel_authorize",
2083 "secret_can_be_anything",
2084 "0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF",
2085 "18446744073709551616"},
2088 "method" : "channel_authorize",
2091 "error" : "channelAmtMalformed",
2093 "error_message" : "Payment channel amount is malformed."
2100 {
"channel_verify: public key.",
2103 "aB4BXXLuPu8DpVuyq1DBiu3SrPdtK9AYZisKhu8mvkoiUD8J9Gov",
2104 "0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF",
2109 "method" : "channel_verify",
2112 "api_version" : %API_VER%,
2114 "channel_id" : "0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF",
2115 "public_key" : "aB4BXXLuPu8DpVuyq1DBiu3SrPdtK9AYZisKhu8mvkoiUD8J9Gov",
2116 "signature" : "DEADBEEF"
2120 {"channel_verify: public key hex.",
2123 "021D93E21C44160A1B3B66DA1F37B86BE39FFEA3FC4B95FAA2063F82EE823599F6",
2124 "0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF",
2125 "18446744073709551615",
2129 "method" : "channel_verify",
2132 "api_version" : %API_VER%,
2133 "amount" : "18446744073709551615",
2134 "channel_id" : "0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF",
2135 "public_key" : "021D93E21C44160A1B3B66DA1F37B86BE39FFEA3FC4B95FAA2063F82EE823599F6",
2136 "signature" : "DEADBEEF"
2140 {"channel_verify: too few arguments.",
2143 "aB4BXXLuPu8DpVuyq1DBiu3SrPdtK9AYZisKhu8mvkoiUD8J9Gov",
2144 "0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF"},
2147 "method" : "channel_verify",
2150 "error" : "badSyntax",
2152 "error_message" : "Syntax error."
2156 {"channel_verify: too many arguments.",
2159 "aB4BXXLuPu8DpVuyq1DBiu3SrPdtK9AYZisKhu8mvkoiUD8J9Gov",
2160 "0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF",
2166 "method" : "channel_verify",
2169 "error" : "badSyntax",
2171 "error_message" : "Syntax error."
2175 {"channel_verify: malformed public key.",
2178 "aB4BXXLuPu8DpVuyq1DBiu3SrPdtK9AYZisKhu8mvkoiUD8J9GoV",
2179 "0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF",
2184 "method" : "channel_verify",
2187 "error" : "publicMalformed",
2189 "error_message" : "Public key is malformed."
2193 {"channel_verify: malformed hex public key.",
2196 "021D93E21C44160A1B3B66DA1F37B86BE39FFEA3FC4B95FAA2063F82EE823599F",
2197 "0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF",
2202 "method" : "channel_verify",
2205 "error" : "publicMalformed",
2207 "error_message" : "Public key is malformed."
2211 {"channel_verify: invalid channel id.",
2214 "aB4BXXLuPu8DpVuyq1DBiu3SrPdtK9AYZisKhu8mvkoiUD8J9Gov",
2215 "10123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF",
2220 "method" : "channel_verify",
2223 "error" : "channelMalformed",
2225 "error_message" : "Payment channel is malformed."
2229 {"channel_verify: short channel id.",
2232 "aB4BXXLuPu8DpVuyq1DBiu3SrPdtK9AYZisKhu8mvkoiUD8J9Gov",
2233 "123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF",
2238 "method" : "channel_verify",
2241 "error" : "channelMalformed",
2243 "error_message" : "Payment channel is malformed."
2247 {"channel_verify: amount too small.",
2250 "021D93E21C44160A1B3B66DA1F37B86BE39FFEA3FC4B95FAA2063F82EE823599F6",
2251 "0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF",
2256 "method" : "channel_verify",
2259 "error" : "channelAmtMalformed",
2261 "error_message" : "Payment channel amount is malformed."
2265 {"channel_verify: amount too large.",
2268 "021D93E21C44160A1B3B66DA1F37B86BE39FFEA3FC4B95FAA2063F82EE823599F6",
2269 "0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF",
2270 "18446744073709551616",
2274 "method" : "channel_verify",
2277 "error" : "channelAmtMalformed",
2279 "error_message" : "Payment channel amount is malformed."
2283 {"channel_verify: non-hex signature.",
2286 "aB4BXXLuPu8DpVuyq1DBiu3SrPdtK9AYZisKhu8mvkoiUD8J9Gov",
2287 "0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF",
2289 "ThisIsNotHexadecimal"},
2292 "method" : "channel_verify",
2295 "api_version" : %API_VER%,
2296 "amount" : "40000000",
2297 "channel_id" : "0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF",
2298 "public_key" : "aB4BXXLuPu8DpVuyq1DBiu3SrPdtK9AYZisKhu8mvkoiUD8J9Gov",
2299 "signature" : "ThisIsNotHexadecimal"
2306 {
"connect: minimal.",
2310 "ThereIsNoCheckingOnTheIPFormat",
2314 "method" : "connect",
2317 "api_version" : %API_VER%,
2318 "ip" : "ThereIsNoCheckingOnTheIPFormat"
2322 {"connect: ip and port.",
2324 {
"connect",
"ThereIsNoCheckingOnTheIPFormat",
"6561"},
2327 "method" : "connect",
2330 "api_version" : %API_VER%,
2331 "ip" : "ThereIsNoCheckingOnTheIPFormat",
2336 {"connect: too few arguments.",
2343 "method" : "connect",
2346 "error" : "badSyntax",
2348 "error_message" : "Syntax error."
2352 {"connect: too many arguments.",
2354 {
"connect",
"ThereIsNoCheckingOnTheIPFormat",
"6561",
"extra"},
2357 "method" : "connect",
2360 "error" : "badSyntax",
2362 "error_message" : "Syntax error."
2367 "connect: port too small.",
2371 "ThereIsNoCheckingOnTheIPFormat",
2377 "connect: port too large.",
2381 "ThereIsNoCheckingOnTheIPFormat",
2389 {
"consensus_info: minimal.",
2396 "method" : "consensus_info",
2399 "api_version" : %API_VER%
2403 {"consensus_info: too many arguments.",
2405 {
"consensus_info",
"whatever"},
2408 "method" : "consensus_info",
2411 "error" : "badSyntax",
2413 "error_message" : "Syntax error."
2420 {
"deposit_authorized: minimal.",
2423 "deposit_authorized",
2424 "source_account_NotValidated",
2425 "destination_account_NotValidated",
2429 "method" : "deposit_authorized",
2432 "api_version" : %API_VER%,
2433 "destination_account" : "destination_account_NotValidated",
2434 "source_account" : "source_account_NotValidated"
2438 {"deposit_authorized: with text ledger index.",
2440 {
"deposit_authorized",
2441 "source_account_NotValidated",
2442 "destination_account_NotValidated",
2446 "method" : "deposit_authorized",
2449 "api_version" : %API_VER%,
2450 "destination_account" : "destination_account_NotValidated",
2451 "ledger_index" : "validated",
2452 "source_account" : "source_account_NotValidated"
2456 {"deposit_authorized: with ledger index.",
2458 {
"deposit_authorized",
2459 "source_account_NotValidated",
2460 "destination_account_NotValidated",
2464 "method" : "deposit_authorized",
2467 "api_version" : %API_VER%,
2468 "destination_account" : "destination_account_NotValidated",
2469 "ledger_index" : 4294967295,
2470 "source_account" : "source_account_NotValidated"
2474 {"deposit_authorized: with ledger hash.",
2476 {
"deposit_authorized",
2477 "source_account_NotValidated",
2478 "destination_account_NotValidated",
2479 "ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789"},
2482 "method" : "deposit_authorized",
2485 "api_version" : %API_VER%,
2486 "destination_account" : "destination_account_NotValidated",
2487 "ledger_hash" : "ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789",
2488 "source_account" : "source_account_NotValidated"
2492 {"deposit_authorized: too few arguments.",
2495 "deposit_authorized",
2496 "source_account_NotValidated",
2500 "method" : "deposit_authorized",
2503 "error" : "badSyntax",
2505 "error_message" : "Syntax error."
2509 {"deposit_authorized: too many arguments.",
2511 {
"deposit_authorized",
2512 "source_account_NotValidated",
2513 "destination_account_NotValidated",
2514 "ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789",
2518 "method" : "deposit_authorized",
2521 "error" : "badSyntax",
2523 "error_message" : "Syntax error."
2527 {"deposit_authorized: invalid ledger selection.",
2530 "deposit_authorized",
2531 "source_account_NotValidated",
2532 "destination_account_NotValidated",
2537 "method" : "deposit_authorized",
2540 "api_version" : %API_VER%,
2541 "destination_account" : "destination_account_NotValidated",
2543 "source_account" : "source_account_NotValidated"
2550 {
"download_shard: minimal.",
2559 "method" : "download_shard",
2562 "api_version" : %API_VER%,
2566 "url" : "url_NotValidated"
2581 "method" : "download_shard",
2584 "api_version" : %API_VER%,
2588 "url" : "url_NotValidated"
2594 {"download_shard: many shards.",
2599 "url_NotValidated0",
2601 "url_NotValidated1",
2603 "url_NotValidated2",
2605 "url_NotValidated3",
2609 "method" : "download_shard",
2612 "api_version" : %API_VER%,
2615 "index" : 200000000,
2616 "url" : "url_NotValidated0"
2619 "index" : 199999999,
2620 "url" : "url_NotValidated1"
2623 "index" : 199999998,
2624 "url" : "url_NotValidated2"
2627 "index" : 199999997,
2628 "url" : "url_NotValidated3"
2634 {"download_shard: many shards.",
2639 "url_NotValidated0",
2641 "url_NotValidated1",
2643 "url_NotValidated2",
2645 "url_NotValidated3",
2647 "url_NotValidated4",
2651 "method" : "download_shard",
2654 "api_version" : %API_VER%,
2658 "url" : "url_NotValidated0"
2662 "url" : "url_NotValidated1"
2666 "url" : "url_NotValidated2"
2670 "url" : "url_NotValidated3"
2674 "url" : "url_NotValidated4"
2680 {"download_shard: too few arguments.",
2682 {
"download_shard",
"20"},
2685 "method" : "download_shard",
2688 "error" : "badSyntax",
2690 "error_message" : "Syntax error."
2695 "download_shard: novalidate too few arguments.",
2697 {
"download_shard",
"novalidate",
"20"},
2700 {"download_shard: novalidate at end.",
2710 "method" : "download_shard",
2713 "api_version" : %API_VER%,
2717 "url" : "url_NotValidated"
2723 {"download_shard: novalidate in middle.",
2728 "url_NotValidated20",
2731 "url_NotValidated200",
2735 "method" : "download_shard",
2738 "error" : "invalidParams",
2740 "error_message" : "Invalid parameters."
2745 "download_shard: arguments swapped.",
2754 {"download_shard: index too small.",
2763 {"download_shard: index too big.",
2775 {
"feature: minimal.",
2782 "method" : "feature",
2785 "api_version" : %API_VER%,
2789 {"feature: with name.",
2791 {
"feature",
"featureNameOrHexIsNotValidated"},
2794 "method" : "feature",
2797 "api_version" : %API_VER%,
2798 "feature" : "featureNameOrHexIsNotValidated"
2802 {"feature: accept.",
2805 "FEDCBA9876543210FEDCBA9876543210FEDCBA9876543210FEDCBA9876543210FEDCBA98"
2810 "method" : "feature",
2813 "api_version" : %API_VER%,
2814 "feature" : "FEDCBA9876543210FEDCBA9876543210FEDCBA9876543210FEDCBA9876543210FEDCBA9876543210",
2819 {"feature: reject.",
2821 {
"feature",
"0",
"reject"},
2824 "method" : "feature",
2827 "api_version" : %API_VER%,
2833 {"feature: too many arguments.",
2835 {
"feature",
"featureNameOrHexIsNotValidated",
"accept",
"anotherArg"},
2838 "method" : "feature",
2841 "error" : "badSyntax",
2843 "error_message" : "Syntax error."
2847 {"feature: neither accept nor reject.",
2851 "featureNameOrHexIsNotValidated",
2856 "method" : "feature",
2859 "error" : "invalidParams",
2861 "error_message" : "Invalid parameters."
2868 {
"fetch_info: minimal.",
2875 "method" : "fetch_info",
2878 "api_version" : %API_VER%,
2882 {"fetch_info: clear.",
2884 {
"fetch_info",
"clear"},
2887 "method" : "fetch_info",
2890 "api_version" : %API_VER%,
2895 {"fetch_info: too many arguments.",
2897 {
"fetch_info",
"clear",
"other"},
2900 "method" : "fetch_info",
2903 "error" : "badSyntax",
2905 "error_message" : "Syntax error."
2909 {"fetch_info: other trailing argument.",
2911 {
"fetch_info",
"too"},
2914 "method" : "fetch_info",
2917 "api_version" : %API_VER%,
2925 {
"gateway_balances: minimal.",
2927 {
"gateway_balances",
"rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh"},
2930 "method" : "gateway_balances",
2933 "api_version" : %API_VER%,
2934 "account" : "rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh",
2938 {"gateway_balances: with ledger index.",
2940 {
"gateway_balances",
"890765",
"rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh"},
2943 "method" : "gateway_balances",
2946 "api_version" : %API_VER%,
2947 "account" : "rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh",
2948 "ledger_index" : "890765"
2952 {"gateway_balances: with text ledger index.",
2954 {
"gateway_balances",
"current",
"rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh"},
2957 "method" : "gateway_balances",
2960 "api_version" : %API_VER%,
2961 "account" : "rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh",
2962 "ledger_index" : "current"
2966 {"gateway_balances: with 64 character ledger hash.",
2968 {
"gateway_balances",
2969 "0123456789ABCDEFGHIJKLMNOPQRSTUV0123456789ABCDEFGHIJKLMNOPQRSTUV",
2970 "rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh"},
2973 "method" : "gateway_balances",
2976 "api_version" : %API_VER%,
2977 "account" : "rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh",
2978 "ledger_hash" : "0123456789ABCDEFGHIJKLMNOPQRSTUV0123456789ABCDEFGHIJKLMNOPQRSTUV"
2982 {"gateway_balances: 1 hotwallet.",
2984 {
"gateway_balances",
2985 "rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh",
2986 "hotwallet_is_not_validated"},
2989 "method" : "gateway_balances",
2992 "api_version" : %API_VER%,
2993 "account" : "rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh",
2994 "hotwallet" : [ "hotwallet_is_not_validated" ]
2998 {"gateway_balances: 3 hotwallets.",
3002 "0123456789ABCDEFGHIJKLMNOPQRSTUV0123456789ABCDEFGHIJKLMNOPQRSTUV",
3003 "rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh",
3004 "hotwallet_is_not_validated_1",
3005 "hotwallet_is_not_validated_2",
3006 "hotwallet_is_not_validated_3",
3010 "method" : "gateway_balances",
3013 "api_version" : %API_VER%,
3014 "account" : "rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh",
3016 "hotwallet_is_not_validated_1",
3017 "hotwallet_is_not_validated_2",
3018 "hotwallet_is_not_validated_3"
3020 "ledger_hash" : "0123456789ABCDEFGHIJKLMNOPQRSTUV0123456789ABCDEFGHIJKLMNOPQRSTUV"
3024 {"gateway_balances: too few arguments.",
3031 "method" : "gateway_balances",
3034 "error" : "badSyntax",
3036 "error_message" : "Syntax error."
3040 {"gateway_balances: empty first argument.",
3042 {
"gateway_balances",
""},
3045 "method" : "gateway_balances",
3048 "error" : "invalidParams",
3050 "error_message" : "Invalid first parameter"
3054 {"gateway_balances: with ledger index but no gateway.",
3062 "method" : "gateway_balances",
3065 "error" : "invalidParams",
3067 "error_message" : "Invalid hotwallet"
3071 {"gateway_balances: with text ledger index but no gateway.",
3079 "method" : "gateway_balances",
3082 "error" : "invalidParams",
3084 "error_message" : "Invalid hotwallet"
3088 {"gateway_balances: with 64 character ledger hash but no gateway.",
3092 "0123456789ABCDEFGHIJKLMNOPQRSTUV0123456789ABCDEFGHIJKLMNOPQRSTUV",
3096 "method" : "gateway_balances",
3099 "error" : "invalidParams",
3101 "error_message" : "Invalid hotwallet"
3108 {
"get_counts: minimal.",
3115 "method" : "get_counts",
3118 "api_version" : %API_VER%,
3122 {"get_counts: with maximum count.",
3124 {
"get_counts",
"100"},
3127 "method" : "get_counts",
3130 "api_version" : %API_VER%,
3135 {"get_counts: too many arguments.",
3137 {
"get_counts",
"100",
"whatever"},
3140 "method" : "get_counts",
3143 "error" : "badSyntax",
3145 "error_message" : "Syntax error."
3149 {"get_counts: count too small.",
3157 {"get_counts: count too large.",
3159 {
"get_counts",
"4294967296"},
3170 R
"({"json_argument":true})",
3174 "method" : "command",
3177 "api_version" : %API_VER%,
3178 "json_argument" : true,
3179 "method" : "command"
3183 {"json: null object.",
3192 "method" : "command",
3195 "api_version" : %API_VER%,
3196 "method" : "command"
3200 {"json: too few arguments.",
3202 {
"json",
"command"},
3208 "error" : "badSyntax",
3210 "error_message" : "Syntax error."
3214 {"json: too many arguments.",
3216 {
"json",
"command", R
"({"json_argument":true})", "extra"},
3222 "error" : "badSyntax",
3224 "error_message" : "Syntax error."
3228 {"json: array, not object.",
3233 R
"(["arg1","arg2"])",
3240 "error" : "invalidParams",
3242 "error_message" : "Invalid parameters."
3246 {"json: invalid json (note closing comma).",
3251 R
"({"json_argument":true,})",
3258 "error" : "invalidParams",
3260 "error_message" : "Invalid parameters."
3267 {
"json2: minimal object.",
3271 R
"({"jsonrpc":"2.0","ripplerpc":"2.0","id":"A1","method":"call_1"})",
3277 "method" : "call_1",
3280 "api_version" : %API_VER%,
3283 "method" : "call_1",
3289 {"json2: object with nested params.",
3295 "ripplerpc" : "2.0",
3297 "method" : "call_1",
3298 "params" : [{"inner_arg" : "yup"}]
3305 "method" : "call_1",
3308 "api_version" : %API_VER%,
3314 "method" : "call_1",
3320 {"json2: minimal array.",
3324 R
"([{"jsonrpc":"2.0","ripplerpc":"2.0","id":"A1","method":"call_1"}])",
3332 "api_version" : %API_VER%,
3335 "method" : "call_1",
3341 {"json2: array with object with nested params.",
3350 "params" : [{"inner_arg" : "yup"}]}
3359 "api_version" : %API_VER%,
3365 "method" : "call_1",
3370 {"json2: too few arguments.",
3380 "error" : "badSyntax",
3382 "error_message" : "Syntax error."
3386 {"json2: too many arguments.",
3389 R
"({"jsonrpc":"2.0","ripplerpc":"2.0","id":"A1","method":"call_this"})",
3396 "error" : "badSyntax",
3398 "error_message" : "Syntax error."
3402 {"json2: malformed json (note extra comma).",
3406 R
"({"jsonrpc":"2.0","ripplerpc":"2.0","id":"A1","method":"call_1",})",
3415 "error" : "invalidParams",
3417 "error_message" : "Invalid parameters.",
3425 {"json2: omit jsonrpc.",
3429 R
"({"ripplerpc":"2.0","id":"A1","method":"call_1"})",
3437 "error" : "invalidParams",
3439 "error_message" : "Invalid parameters.",
3446 {"json2: wrong jsonrpc version.",
3450 R
"({"jsonrpc":"2.1","ripplerpc":"2.0","id":"A1","method":"call_1"})",
3459 "error" : "invalidParams",
3461 "error_message" : "Invalid parameters.",
3469 {"json2: omit ripplerpc.",
3473 R
"({"jsonrpc":"2.0","id":"A1","method":"call_1"})",
3482 "error" : "invalidParams",
3484 "error_message" : "Invalid parameters.",
3490 {"json2: wrong ripplerpc version.",
3494 R
"({"jsonrpc":"2.0","ripplerpc":"2.00","id":"A1","method":"call_1"})",
3503 "error" : "invalidParams",
3505 "error_message" : "Invalid parameters.",
3508 "ripplerpc" : "2.00"
3511 "ripplerpc" : "2.00"
3517 R
"({"jsonrpc":"2.0","ripplerpc":"2.0","method":"call_1"})",
3525 "error" : "invalidParams",
3527 "error_message" : "Invalid parameters.",
3534 {"json2: omit method.",
3538 R
"({"jsonrpc":"2.0","ripplerpc":"2.0","id":"A1"})",
3547 "error" : "invalidParams",
3549 "error_message" : "Invalid parameters.",
3557 {"json2: empty outer array.",
3568 "error" : "invalidParams",
3570 "error_message" : "Invalid parameters."
3574 {"json2: empty inner array.",
3578 R
"([{"jsonrpc":"2.0","ripplerpc":"2.0","id":"A1","method":"call_1",[]}])",
3585 "error" : "invalidParams",
3587 "error_message" : "Invalid parameters."
3591 {"json2: array with non-json2 object.",
3597 "ripplerpc" : "2.0",
3608 "error" : "invalidParams",
3610 "error_message" : "Invalid parameters."
3614 {"json2: non-object or -array inner params member.",
3620 "ripplerpc" : "2.0",
3622 "method" : "call_1",
3633 "error" : "invalidParams",
3635 "error_message" : "Invalid parameters.",
3646 {
"ledger: minimal.",
3651 "method" : "ledger",
3654 "api_version" : %API_VER%,
3658 {"ledger: ledger index.",
3660 {
"ledger",
"4294967295"},
3663 "method" : "ledger",
3666 "api_version" : %API_VER%,
3667 "ledger_index" : 4294967295
3671 {"ledger: text ledger index.",
3673 {
"ledger",
"validated"},
3676 "method" : "ledger",
3679 "api_version" : %API_VER%,
3680 "ledger_index" : "validated"
3684 {"ledger: ledger hash.",
3687 "ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789"},
3690 "method" : "ledger",
3693 "api_version" : %API_VER%,
3694 "ledger_hash" : "ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789"
3700 {
"ledger",
"current",
"full"},
3703 "method" : "ledger",
3706 "api_version" : %API_VER%,
3708 "ledger_index" : "current"
3714 {
"ledger",
"closed",
"tx"},
3717 "method" : "ledger",
3720 "api_version" : %API_VER%,
3722 "ledger_index" : "closed",
3723 "transactions" : true
3727 {"ledger: too many arguments.",
3729 {
"ledger",
"4294967295",
"spare"},
3732 "method" : "ledger",
3735 "api_version" : %API_VER%,
3736 "ledger_index" : 4294967295
3740 {"ledger: ledger index too small.",
3745 "method" : "ledger",
3748 "api_version" : %API_VER%,
3753 {"ledger: ledger index too big.",
3755 {
"ledger",
"4294967296"},
3758 "method" : "ledger",
3761 "api_version" : %API_VER%,
3766 {"ledger: invalid ledger text.",
3768 {
"ledger",
"latest"},
3771 "method" : "ledger",
3774 "api_version" : %API_VER%,
3779 {"ledger: unsupported final argument.",
3781 {
"ledger",
"current",
"expand"},
3784 "method" : "ledger",
3787 "api_version" : %API_VER%,
3788 "ledger_index" : "current"
3795 {
"ledger_closed: minimal.",
3800 "method" : "ledger_closed",
3803 "api_version" : %API_VER%,
3807 {"ledger_closed: too many arguments.",
3809 {
"ledger_closed",
"today"},
3812 "method" : "ledger_closed",
3815 "error" : "badSyntax",
3817 "error_message" : "Syntax error."
3824 {
"ledger_current: minimal.",
3829 "method" : "ledger_current",
3832 "api_version" : %API_VER%,
3836 {"ledger_current: too many arguments.",
3838 {
"ledger_current",
"today"},
3841 "method" : "ledger_current",
3844 "error" : "badSyntax",
3846 "error_message" : "Syntax error."
3853 {
"ledger_header: ledger index.",
3855 {
"ledger_header",
"4294967295"},
3858 "method" : "ledger_header",
3861 "api_version" : %API_VER%,
3862 "ledger_index" : 4294967295
3866 {"ledger_header: ledger hash.",
3869 "ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789"},
3872 "method" : "ledger_header",
3875 "api_version" : %API_VER%,
3876 "ledger_hash" : "ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789"
3880 {"ledger_header: too few arguments.",
3887 "method" : "ledger_header",
3890 "error" : "badSyntax",
3892 "error_message" : "Syntax error."
3896 {"ledger_header: too many arguments.",
3898 {
"ledger_header",
"4294967295",
"spare"},
3901 "method" : "ledger_header",
3904 "error" : "badSyntax",
3906 "error_message" : "Syntax error."
3910 {"ledger_header: text ledger index.",
3912 {
"ledger_header",
"current"},
3915 "method" : "ledger_header",
3918 "api_version" : %API_VER%,
3923 {"ledger_header: ledger index too small.",
3925 {
"ledger_header",
"-1"},
3928 "method" : "ledger_header",
3931 "api_version" : %API_VER%,
3936 {"ledger_header: ledger index too big.",
3938 {
"ledger_header",
"4294967296"},
3941 "method" : "ledger_header",
3944 "api_version" : %API_VER%,
3952 {
"ledger_request: ledger index.",
3954 {
"ledger_request",
"4294967295"},
3957 "method" : "ledger_request",
3960 "api_version" : %API_VER%,
3961 "ledger_index" : 4294967295
3965 {"ledger_request: ledger hash.",
3968 "ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789"},
3971 "method" : "ledger_request",
3974 "api_version" : %API_VER%,
3975 "ledger_hash" : "ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789"
3979 {"ledger_request: too few arguments.",
3986 "method" : "ledger_request",
3989 "error" : "badSyntax",
3991 "error_message" : "Syntax error."
3995 {"ledger_request: too many arguments.",
3997 {
"ledger_request",
"4294967295",
"spare"},
4000 "method" : "ledger_request",
4003 "error" : "badSyntax",
4005 "error_message" : "Syntax error."
4009 {"ledger_request: text ledger index.",
4011 {
"ledger_request",
"current"},
4014 "method" : "ledger_request",
4017 "api_version" : %API_VER%,
4022 {"ledger_request: ledger index too small.",
4024 {
"ledger_request",
"-1"},
4027 "method" : "ledger_request",
4030 "api_version" : %API_VER%,
4035 {"ledger_request: ledger index too big.",
4037 {
"ledger_request",
"4294967296"},
4040 "method" : "ledger_request",
4043 "api_version" : %API_VER%,
4051 {
"log_level: minimal.",
4058 "method" : "log_level",
4061 "api_version" : %API_VER%,
4065 {"log_level: fatal.",
4067 {
"log_level",
"fatal"},
4070 "method" : "log_level",
4073 "api_version" : %API_VER%,
4074 "severity" : "fatal"
4078 {"log_level: error.",
4080 {
"log_level",
"error"},
4083 "method" : "log_level",
4086 "api_version" : %API_VER%,
4087 "severity" : "error"
4091 {"log_level: warn.",
4093 {
"log_level",
"warn"},
4096 "method" : "log_level",
4099 "api_version" : %API_VER%,
4104 {"log_level: debug.",
4106 {
"log_level",
"debug"},
4109 "method" : "log_level",
4112 "api_version" : %API_VER%,
4113 "severity" : "debug"
4117 {"log_level: trace.",
4119 {
"log_level",
"trace"},
4122 "method" : "log_level",
4125 "api_version" : %API_VER%,
4126 "severity" : "trace"
4130 {"log_level: base partition.",
4132 {
"log_level",
"base",
"trace"},
4135 "method" : "log_level",
4138 "api_version" : %API_VER%,
4139 "partition" : "base",
4140 "severity" : "trace"
4144 {"log_level: partiton_name.",
4146 {
"log_level",
"partition_name",
"fatal"},
4149 "method" : "log_level",
4152 "api_version" : %API_VER%,
4153 "partition" : "partition_name",
4154 "severity" : "fatal"
4158 {"log_level: too many arguments.",
4160 {
"log_level",
"partition_name",
"fatal",
"extra"},
4163 "method" : "log_level",
4166 "error" : "badSyntax",
4168 "error_message" : "Syntax error."
4172 {"log_level: invalid severity.",
4174 {
"log_level",
"err"},
4177 "method" : "log_level",
4180 "api_version" : %API_VER%,
4185 {"log_level: swap partition name and severity.",
4194 "method" : "log_level",
4197 "api_version" : %API_VER%,
4198 "partition" : "fatal",
4199 "severity" : "partition_name"
4206 {
"logrotate: minimal.",
4213 "method" : "logrotate",
4216 "api_version" : %API_VER%,
4220 {"logrotate: too many arguments.",
4222 {
"logrotate",
"extra"},
4225 "method" : "logrotate",
4228 "error" : "badSyntax",
4230 "error_message" : "Syntax error."
4237 {
"node_to_shard: status.",
4239 {
"node_to_shard",
"status"},
4242 "method" : "node_to_shard",
4245 "api_version" : %API_VER%,
4250 {"node_to_shard: start.",
4252 {
"node_to_shard",
"start"},
4255 "method" : "node_to_shard",
4258 "api_version" : %API_VER%,
4263 {"node_to_shard: stop.",
4265 {
"node_to_shard",
"stop"},
4268 "method" : "node_to_shard",
4271 "api_version" : %API_VER%,
4276 {"node_to_shard: too many arguments.",
4278 {
"node_to_shard",
"start",
"stop"},
4281 "method" : "node_to_shard",
4284 "error" : "badSyntax",
4286 "error_message" : "Syntax error."
4290 {"node_to_shard: invalid argument.",
4292 {
"node_to_shard",
"invalid"},
4295 "method" : "node_to_shard",
4298 "api_version" : %API_VER%,
4299 "action" : "invalid"
4306 {
"owner_info: minimal.",
4308 {
"owner_info",
"rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh"},
4311 "method" : "owner_info",
4314 "api_version" : %API_VER%,
4315 "account" : "rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh"
4319 {"owner_info: with numeric ledger index.",
4321 {
"owner_info",
"rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh",
"987654321"},
4324 "method" : "owner_info",
4327 "api_version" : %API_VER%,
4328 "account" : "rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh",
4329 "ledger_index" : 987654321
4333 {"owner_info: with text ledger index.",
4335 {
"owner_info",
"rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh",
"validated"},
4338 "method" : "owner_info",
4341 "api_version" : %API_VER%,
4342 "account" : "rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh",
4343 "ledger_index" : "validated"
4347 {"owner_info: with ledger hash.",
4350 "rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh",
4351 "0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF"},
4354 "method" : "owner_info",
4357 "api_version" : %API_VER%,
4358 "account" : "rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh",
4359 "ledger_hash" : "0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF"
4363 {"owner_info: with ledger index.",
4365 {
"owner_info",
"rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh",
"validated"},
4368 "method" : "owner_info",
4371 "account" : "rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh",
4372 "api_version" : %API_VER%,
4373 "ledger_index" : "validated"
4377 {"owner_info: too few arguments.",
4384 "method" : "owner_info",
4387 "error" : "badSyntax",
4389 "error_message" : "Syntax error."
4393 {"owner_info: too many arguments.",
4397 "rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh",
4404 "method" : "owner_info",
4407 "error" : "badSyntax",
4409 "error_message" : "Syntax error."
4414 "owner_info: invalid accountID.",
4422 "method" : "owner_info",
4425 "error" : "actMalformed",
4427 "error_message" : "Account malformed."
4435 "owner_info: invalid ledger selection.",
4437 {
"owner_info",
"rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh",
"no_ledger"},
4440 "method" : "owner_info",
4443 "api_version" : %API_VER%,
4444 "account" : "rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh",
4453 "owner_info: invalid ledger selection.",
4455 {
"owner_info",
"rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh",
"no_ledger"},
4458 "method" : "owner_info",
4461 "account" : "rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh",
4462 "api_version" : %API_VER%,
4481 "api_version" : %API_VER%,
4485 {"peers: too many arguments.",
4493 "error" : "badSyntax",
4495 "error_message" : "Syntax error."
4502 {
"peer_reservations_add: minimal.",
4504 {
"peer_reservations_add",
"public_key_string"},
4507 "method" : "peer_reservations_add",
4510 "api_version" : %API_VER%,
4511 "public_key" : "public_key_string"
4515 {"peer_reservations_add: with description.",
4517 {
"peer_reservations_add",
"public_key_string",
"public_key_description"},
4520 "method" : "peer_reservations_add",
4523 "api_version" : %API_VER%,
4524 "description" : "public_key_description",
4525 "public_key" : "public_key_string"
4529 {"peer_reservations_add: too few arguments.",
4531 {
"peer_reservations_add"},
4534 "method" : "peer_reservations_add",
4537 "error" : "badSyntax",
4539 "error_message" : "Syntax error."
4543 {"peer_reservations_add: too many arguments.",
4545 {
"peer_reservations_add",
4546 "public_key_string",
4547 "public_key_description",
4551 "method" : "peer_reservations_add",
4554 "error" : "badSyntax",
4556 "error_message" : "Syntax error."
4563 {
"peer_reservations_del: minimal.",
4565 {
"peer_reservations_del",
"public_key_string"},
4568 "method" : "peer_reservations_del",
4571 "api_version" : %API_VER%,
4572 "public_key" : "public_key_string"
4576 {"peer_reservations_del: too few arguments.",
4578 {
"peer_reservations_del"},
4581 "method" : "peer_reservations_del",
4584 "error" : "badSyntax",
4586 "error_message" : "Syntax error."
4590 {"peer_reservations_del: too many arguments.",
4592 {
"peer_reservations_del",
4593 "public_key_string",
4594 "public_key_description",
4598 "method" : "peer_reservations_del",
4601 "error" : "badSyntax",
4603 "error_message" : "Syntax error."
4620 "api_version" : %API_VER%,
4624 {"ping: too many arguments.",
4632 "error" : "badSyntax",
4634 "error_message" : "Syntax error."
4651 "api_version" : %API_VER%,
4656 "print: extra argument.",
4664 "api_version" : %API_VER%,
4665 "params" : [ "extra" ]
4669 {"print: too many arguments.",
4671 {
"print",
"extra1",
"extra2"},
4677 "error" : "badSyntax",
4679 "error_message" : "Syntax error."
4686 {
"random: minimal.",
4693 "method" : "random",
4696 "api_version" : %API_VER%,
4700 {"random: too many arguments.",
4702 {
"random",
"extra"},
4705 "method" : "random",
4708 "error" : "badSyntax",
4710 "error_message" : "Syntax error."
4717 {
"ripple_path_find: minimal.",
4721 R
"({"json_argument":true})",
4725 "method" : "ripple_path_find",
4728 "api_version" : %API_VER%,
4729 "json_argument" : true
4733 {"ripple_path_find: ledger index.",
4735 {
"ripple_path_find", R
"({"json_argument":true})", "4294967295"},
4738 "method" : "ripple_path_find",
4741 "api_version" : %API_VER%,
4742 "json_argument" : true,
4743 "ledger_index" : 4294967295
4747 {"ripple_path_find: text ledger index.",
4749 {
"ripple_path_find", R
"({"json_argument":true})", "closed"},
4752 "method" : "ripple_path_find",
4755 "api_version" : %API_VER%,
4756 "json_argument" : true,
4757 "ledger_index" : "closed"
4761 {"ripple_path_find: ledger hash.",
4763 {
"ripple_path_find",
4764 R
"({"json_argument":true})",
4765 "0123456789ABCDEFGHIJKLMNOPQRSTUV0123456789ABCDEFGHIJKLMNOPQRSTUV"},
4768 "method" : "ripple_path_find",
4771 "api_version" : %API_VER%,
4772 "json_argument" : true,
4773 "ledger_hash" : "0123456789ABCDEFGHIJKLMNOPQRSTUV0123456789ABCDEFGHIJKLMNOPQRSTUV"
4778 {"ripple_path_find: too few arguments.",
4785 "method" : "ripple_path_find",
4788 "error" : "badSyntax",
4790 "error_message" : "Syntax error."
4794 {"ripple_path_find: too many arguments.",
4796 {
"ripple_path_find", R
"({"json_argument":true})", "current",
"extra"},
4799 "method" : "ripple_path_find",
4802 "error" : "badSyntax",
4804 "error_message" : "Syntax error."
4808 {"ripple_path_find: invalid json (note extra comma).",
4812 R
"({"json_argument":true,})",
4816 "method" : "ripple_path_find",
4819 "error" : "invalidParams",
4821 "error_message" : "Invalid parameters."
4825 {"ripple_path_find: ledger index too small.",
4827 {
"ripple_path_find", R
"({"json_argument":true})", "-1"},
4830 "method" : "ripple_path_find",
4833 "api_version" : %API_VER%,
4834 "json_argument" : true,
4839 {"ripple_path_find: ledger index too big.",
4841 {
"ripple_path_find", R
"({"json_argument":true})", "4294967296"},
4844 "method" : "ripple_path_find",
4847 "api_version" : %API_VER%,
4848 "json_argument" : true,
4853 {"ripple_path_find: invalid text ledger index.",
4855 {
"ripple_path_find", R
"({"json_argument":true})", "cur"},
4858 "method" : "ripple_path_find",
4861 "api_version" : %API_VER%,
4862 "json_argument" : true,
4875 R
"({"json_argument":true})",
4882 "api_version" : %API_VER%,
4883 "secret" : "my_secret",
4885 "json_argument" : true
4892 {
"sign",
"my_secret", R
"({"json_argument":true})", "offline"},
4898 "api_version" : %API_VER%,
4900 "secret" : "my_secret",
4902 "json_argument" : true
4907 {"sign: too few arguments.",
4909 {
"sign",
"contents_of_blob"},
4915 "error" : "badSyntax",
4917 "error_message" : "Syntax error."
4921 {"sign: too many arguments.",
4923 {
"sign",
"my_secret", R
"({"json_argument":true})", "offline",
"extra"},
4929 "error" : "badSyntax",
4931 "error_message" : "Syntax error."
4935 {"sign: invalid JSON (note extra comma).",
4940 R
"({"json_argument":true,})",
4947 "error" : "invalidParams",
4949 "error_message" : "Invalid parameters."
4953 {"sign: invalid final argument.",
4955 {
"sign",
"my_secret", R
"({"json_argument":true})", "offlin"},
4961 "error" : "invalidParams",
4963 "error_message" : "Invalid parameters."
4970 {
"sign_for: minimal.",
4974 "rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh",
4976 R
"({"json_argument":true})",
4980 "method" : "sign_for",
4983 "api_version" : %API_VER%,
4984 "account" : "rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh",
4985 "secret" : "my_secret",
4987 "json_argument" : true
4992 {"sign_for: offline.",
4995 "rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh",
4997 R
"({"json_argument":true})",
5001 "method" : "sign_for",
5004 "api_version" : %API_VER%,
5005 "account" : "rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh",
5007 "secret" : "my_secret",
5009 "json_argument" : true
5014 {"sign_for: too few arguments.",
5018 "rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh",
5023 "method" : "sign_for",
5026 "error" : "badSyntax",
5028 "error_message" : "Syntax error."
5032 {"sign_for: too many arguments.",
5035 "rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh",
5037 R
"({"json_argument":true})",
5042 "method" : "sign_for",
5045 "error" : "badSyntax",
5047 "error_message" : "Syntax error."
5051 {"sign_for: invalid json (note extra comma).",
5055 "rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh",
5057 R
"({"json_argument":true,})",
5061 "method" : "sign_for",
5064 "error" : "invalidParams",
5066 "error_message" : "Invalid parameters."
5070 {"sign_for: invalid final argument.",
5073 "rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh",
5075 R
"({"json_argument":true})",
5079 "method" : "sign_for",
5082 "error" : "invalidParams",
5084 "error_message" : "Invalid parameters."
5093 {
"submit",
"the blob is unvalidated and may be any length..."},
5096 "method" : "submit",
5099 "api_version" : %API_VER%,
5100 "tx_blob" : "the blob is unvalidated and may be any length..."
5109 R
"({"json_argument":true})",
5113 "method" : "submit",
5116 "api_version" : %API_VER%,
5117 "secret" : "my_secret",
5119 "json_argument" : true
5124 {"submit: too few arguments.",
5131 "method" : "submit",
5134 "error" : "badSyntax",
5136 "error_message" : "Syntax error."
5141 "submit: four arguments.",
5143 {
"submit",
"my_secret", R
"({"json_argument":true})", "offline"},
5146 "method" : "submit",
5149 "api_version" : %API_VER%,
5151 "secret" : "my_secret",
5153 "json_argument" : true
5158 {"submit: too many arguments.",
5160 {
"submit",
"my_secret", R
"({"json_argument":true})", "offline",
"extra"},
5163 "method" : "submit",
5166 "error" : "badSyntax",
5168 "error_message" : "Syntax error."
5172 {"submit: invalid json (note extra comma).",
5177 R
"({"json_argument":true,})",
5181 "method" : "submit",
5184 "error" : "invalidParams",
5186 "error_message" : "Invalid parameters."
5190 {"submit: last argument not \"offline\".",
5192 {
"submit",
"my_secret", R
"({"json_argument":true})", "offlne"},
5195 "method" : "submit",
5198 "error" : "invalidParams",
5200 "error_message" : "Invalid parameters."
5207 {
"submit_multisigned: json.",
5210 "submit_multisigned",
5211 R
"({"json_argument":true})",
5215 "method" : "submit_multisigned",
5218 "api_version" : %API_VER%,
5220 "json_argument" : true
5225 {"submit_multisigned: too few arguments.",
5228 "submit_multisigned",
5232 "method" : "submit_multisigned",
5235 "error" : "badSyntax",
5237 "error_message" : "Syntax error."
5241 {"submit_multisigned: too many arguments.",
5243 {
"submit_multisigned", R
"({"json_argument":true})", "extra"},
5246 "method" : "submit_multisigned",
5249 "error" : "badSyntax",
5251 "error_message" : "Syntax error."
5255 {"submit_multisigned: invalid json (note extra comma).",
5258 "submit_multisigned",
5259 R
"({"json_argument":true,})",
5263 "method" : "submit_multisigned",
5266 "error" : "invalidParams",
5268 "error_message" : "Invalid parameters."
5276 {
"server_info: minimal.",
5283 "method" : "server_info",
5286 "api_version" : %API_VER%,
5290 {"server_info: counters.",
5292 {
"server_info",
"counters"},
5295 "method" : "server_info",
5298 "api_version" : %API_VER%,
5303 {"server_info: too many arguments.",
5305 {
"server_info",
"counters",
"extra"},
5308 "method" : "server_info",
5311 "error" : "badSyntax",
5313 "error_message" : "Syntax error."
5317 {"server_info: non-counters argument.",
5319 {
"server_info",
"counter"},
5322 "method" : "server_info",
5325 "api_version" : %API_VER%,
5332 {
"server_state: minimal.",
5339 "method" : "server_state",
5342 "api_version" : %API_VER%,
5346 {"server_state: counters.",
5348 {
"server_state",
"counters"},
5351 "method" : "server_state",
5354 "api_version" : %API_VER%,
5359 {"server_state: too many arguments.",
5361 {
"server_state",
"counters",
"extra"},
5364 "method" : "server_state",
5367 "error" : "badSyntax",
5369 "error_message" : "Syntax error."
5373 {"server_state: non-counters argument.",
5375 {
"server_state",
"counter"},
5378 "method" : "server_state",
5381 "api_version" : %API_VER%,
5398 "api_version" : %API_VER%,
5402 {"stop: too many arguments.",
5410 "error" : "badSyntax",
5412 "error_message" : "Syntax error."
5419 {
"transaction_entry: ledger index.",
5421 {
"transaction_entry",
5422 "0123456789ABCDEFGHIJKLMNOPQRSTUV0123456789ABCDEFGHIJKLMNOPQRSTUV",
5426 "method" : "transaction_entry",
5429 "api_version" : %API_VER%,
5430 "ledger_index" : 4294967295,
5431 "tx_hash" : "0123456789ABCDEFGHIJKLMNOPQRSTUV0123456789ABCDEFGHIJKLMNOPQRSTUV"
5435 {"transaction_entry: text ledger index.",
5437 {
"transaction_entry",
5438 "0123456789ABCDEFGHIJKLMNOPQRSTUV0123456789ABCDEFGHIJKLMNOPQRSTUV",
5442 "method" : "transaction_entry",
5445 "api_version" : %API_VER%,
5446 "ledger_index" : "current",
5447 "tx_hash" : "0123456789ABCDEFGHIJKLMNOPQRSTUV0123456789ABCDEFGHIJKLMNOPQRSTUV"
5451 {"transaction_entry: ledger hash.",
5453 {
"transaction_entry",
5454 "0123456789ABCDEFGHIJKLMNOPQRSTUV0123456789ABCDEFGHIJKLMNOPQRSTUV",
5455 "VUTSRQPONMLKJIHGFEDCBA9876543210VUTSRQPONMLKJIHGFEDCBA9876543210"},
5458 "method" : "transaction_entry",
5461 "api_version" : %API_VER%,
5462 "ledger_hash" : "VUTSRQPONMLKJIHGFEDCBA9876543210VUTSRQPONMLKJIHGFEDCBA9876543210",
5463 "tx_hash" : "0123456789ABCDEFGHIJKLMNOPQRSTUV0123456789ABCDEFGHIJKLMNOPQRSTUV"
5467 {"transaction_entry: too few arguments.",
5470 "transaction_entry",
5471 "0123456789ABCDEFGHIJKLMNOPQRSTUV0123456789ABCDEFGHIJKLMNOPQRSTUV",
5475 "method" : "transaction_entry",
5478 "error" : "badSyntax",
5480 "error_message" : "Syntax error."
5484 {"transaction_entry: too many arguments.",
5486 {
"transaction_entry",
5487 "0123456789ABCDEFGHIJKLMNOPQRSTUV0123456789ABCDEFGHIJKLMNOPQRSTUV",
5492 "method" : "transaction_entry",
5495 "error" : "badSyntax",
5497 "error_message" : "Syntax error."
5501 {"transaction_entry: short tx_hash.",
5504 "transaction_entry",
5505 "123456789ABCDEFGHIJKLMNOPQRSTUV0123456789ABCDEFGHIJKLMNOPQRSTUV",
5510 "method" : "transaction_entry",
5513 "error" : "invalidParams",
5515 "error_message" : "Invalid parameters."
5519 {"transaction_entry: long tx_hash.",
5522 "transaction_entry",
5523 "0123456789ABCDEFGHIJKLMNOPQRSTUV0123456789ABCDEFGHIJKLMNOPQRSTUVW",
5528 "method" : "transaction_entry",
5531 "error" : "invalidParams",
5533 "error_message" : "Invalid parameters."
5537 {"transaction_entry: small ledger index.",
5540 "transaction_entry",
5541 "0123456789ABCDEFGHIJKLMNOPQRSTUV0123456789ABCDEFGHIJKLMNOPQRSTUV",
5546 "method" : "transaction_entry",
5549 "error" : "invalidParams",
5551 "error_message" : "Invalid parameters."
5555 {"transaction_entry: large ledger index.",
5558 "transaction_entry",
5559 "0123456789ABCDEFGHIJKLMNOPQRSTUV0123456789ABCDEFGHIJKLMNOPQRSTUV",
5564 "method" : "transaction_entry",
5567 "error" : "invalidParams",
5569 "error_message" : "Invalid parameters."
5573 {"transaction_entry: short ledger hash.",
5576 "transaction_entry",
5577 "0123456789ABCDEFGHIJKLMNOPQRSTUV0123456789ABCDEFGHIJKLMNOPQRSTUV",
5578 "VUTSRQPONMLKJIHGFEDCBA9876543210VUTSRQPONMLKJIHGFEDCBA987654321",
5582 "method" : "transaction_entry",
5585 "error" : "invalidParams",
5587 "error_message" : "Invalid parameters."
5591 {"transaction_entry: long ledger hash.",
5594 "transaction_entry",
5595 "0123456789ABCDEFGHIJKLMNOPQRSTUV0123456789ABCDEFGHIJKLMNOPQRSTUV",
5596 "VUTSRQPONMLKJIHGFEDCBA9876543210VUTSRQPONMLKJIHGFEDCBA9876543210Z",
5600 "method" : "transaction_entry",
5603 "error" : "invalidParams",
5605 "error_message" : "Invalid parameters."
5612 {
"tx: ctid. minimal",
5614 {
"tx",
"FFFFFFFFFFFFFFFF",
"1",
"2"},
5620 "api_version" : %API_VER%,
5621 "ctid" : "FFFFFFFFFFFFFFFF",
5627 {"tx: ctid. binary",
5629 {
"tx",
"FFFFFFFFFFFFFFFF",
"binary",
"1",
"2"},
5635 "api_version" : %API_VER%,
5637 "ctid" : "FFFFFFFFFFFFFFFF",
5645 {
"tx",
"transaction_hash_is_not_validated"},
5651 "api_version" : %API_VER%,
5652 "transaction" : "transaction_hash_is_not_validated"
5658 {
"tx",
"transaction_hash_is_not_validated",
"binary"},
5664 "api_version" : %API_VER%,
5666 "transaction" : "transaction_hash_is_not_validated"
5670 {"tx: too few arguments.",
5680 "error" : "badSyntax",
5682 "error_message" : "Syntax error."
5686 {"tx: too many arguments.",
5688 {
"tx",
"transaction_hash_is_not_validated",
"binary",
"1",
"2",
"extra"},
5694 "error" : "badSyntax",
5696 "error_message" : "Syntax error."
5700 {"tx: invalid final argument is apparently ignored.",
5702 {
"tx",
"transaction_hash_is_not_validated",
"bin"},
5708 "api_version" : %API_VER%,
5709 "transaction" : "transaction_hash_is_not_validated"
5716 {
"tx_history: minimal.",
5718 {
"tx_history",
"0"},
5721 "method" : "tx_history",
5724 "api_version" : %API_VER%,
5729 {"tx_history: too few arguments.",
5736 "method" : "tx_history",
5739 "error" : "badSyntax",
5741 "error_message" : "Syntax error."
5745 {"tx_history: too many arguments.",
5747 {
"tx_history",
"0",
"1"},
5750 "method" : "tx_history",
5753 "error" : "badSyntax",
5755 "error_message" : "Syntax error."
5761 "tx_history: start too small.",
5763 {
"tx_history",
"-1"},
5769 "tx_history: start too big.",
5771 {
"tx_history",
"4294967296"},
5777 "tx_history: start not integer.",
5779 {
"tx_history",
"beginning"},
5786 {
"unl_list: minimal.",
5793 "method" : "unl_list",
5796 "api_version" : %API_VER%,
5800 {"unl_list: too many arguments.",
5802 {
"unl_list",
"extra"},
5805 "method" : "unl_list",
5808 "error" : "badSyntax",
5810 "error_message" : "Syntax error."
5817 {
"validation_create: minimal.",
5820 "validation_create",
5824 "method" : "validation_create",
5827 "api_version" : %API_VER%,
5831 {"validation_create: with secret.",
5833 {
"validation_create",
"the form of the secret is not validated"},
5836 "method" : "validation_create",
5839 "api_version" : %API_VER%,
5840 "secret" : "the form of the secret is not validated"
5844 {"validation_create: too many arguments.",
5846 {
"validation_create",
"the form of the secret is not validated",
"extra"},
5849 "method" : "validation_create",
5852 "error" : "badSyntax",
5854 "error_message" : "Syntax error."
5861 {
"version: minimal.",
5868 "method" : "version",
5871 "api_version" : %API_VER%,
5875 {"version: too many arguments.",
5877 {
"version",
"extra"},
5880 "method" : "version",
5883 "error" : "badSyntax",
5885 "error_message" : "Syntax error."
5892 {
"wallet_propose: minimal.",
5899 "method" : "wallet_propose",
5902 "api_version" : %API_VER%,
5906 {"wallet_propose: with passphrase.",
5908 {
"wallet_propose",
"the form of the passphrase is not validated"},
5911 "method" : "wallet_propose",
5914 "api_version" : %API_VER%,
5915 "passphrase" : "the form of the passphrase is not validated"
5919 {"wallet_propose: too many arguments.",
5921 {
"wallet_propose",
"the form of the passphrase is not validated",
"extra"},
5924 "method" : "wallet_propose",
5927 "error" : "badSyntax",
5929 "error_message" : "Syntax error."
5936 {
"internal: minimal.",
5938 {
"internal",
"command_name"},
5941 "method" : "internal",
5944 "api_version" : %API_VER%,
5945 "internal_command" : "command_name",
5950 {"internal: with parameters.",
5961 "method" : "internal",
5964 "api_version" : %API_VER%,
5965 "internal_command" : "command_name",
5966 "params" : [ "string_arg", "1", "-1", "4294967296", "3.14159" ]
5970 {"internal: too few arguments.",
5977 "method" : "internal",
5980 "error" : "badSyntax",
5982 "error_message" : "Syntax error."
5989 {
"path_find: minimal.",
5996 "method" : "path_find",
5999 "error" : "noEvents",
6001 "error_message" : "Current transport does not support events."
6005 {"path_find: with arguments.",
6007 {
"path_find",
"string_arg",
"1",
"-1",
"4294967296",
"3.14159"},
6010 "method" : "path_find",
6013 "error" : "noEvents",
6015 "error_message" : "Current transport does not support events."
6022 {
"subscribe: minimal.",
6029 "method" : "subscribe",
6032 "error" : "noEvents",
6034 "error_message" : "Current transport does not support events."
6038 {"subscribe: with arguments.",
6040 {
"subscribe",
"string_arg",
"1",
"-1",
"4294967296",
"3.14159"},
6043 "method" : "subscribe",
6046 "error" : "noEvents",
6048 "error_message" : "Current transport does not support events."
6055 {
"unsubscribe: minimal.",
6062 "method" : "unsubscribe",
6065 "error" : "noEvents",
6067 "error_message" : "Current transport does not support events."
6071 {"unsubscribe: with arguments.",
6073 {
"unsubscribe",
"string_arg",
"1",
"-1",
"4294967296",
"3.14159"},
6076 "method" : "unsubscribe",
6079 "error" : "noEvents",
6081 "error_message" : "Current transport does not support events."
6088 {
"unknown_command: minimal.",
6095 "method" : "unknown_command",
6098 "api_version" : %API_VER%,
6102 {"unknown_command: with arguments.",
6104 {
"unknown_command",
"string_arg",
"1",
"-1",
"4294967296",
"3.14159"},
6107 "method" : "unknown_command",
6110 "api_version" : %API_VER%,
6111 "params" : [ "string_arg", "1", "-1", "4294967296", "3.14159" ]
6121 static auto const place_holder =
"%API_VER%";
6123 boost::replace_all(jr, place_holder, version_str);
6130 using namespace test::jtx;
6132 cfg->NETWORK_ID = networkID;
6143 testcase <<
"RPCCall API version " << apiVersion;
6155 if (!BEAST_EXPECT(!rpcCallTest.exp.empty()))
6159 rpcCallTest.args.
begin(), rpcCallTest.args.
end()};
6161 const char*
const expVersioned =
6163 rpcCallTest.exp.size()
6165 : rpcCallTest.exp.back();
6183 fail(rpcCallTest.description, __FILE__, rpcCallTest.line);
6196 if (
json.isMember(jss::params) &&
json[jss::params].isArray() &&
6197 json[jss::params].size() > 0 &&
6198 json[jss::params][0u].isObject())
6200 json[jss::params][0u].removeMember(jss::error_code);
6214 fail(rpcCallTest.description, __FILE__, rpcCallTest.line);
const std::vector< char const * > args
const beast::Journal journal
void forAllApiVersions(VersionedTestCallable auto... testCallable)
Unserialize a JSON document into a Value.
std::unique_ptr< Config > envconfig()
creates and initializes a default configuration for jtx::Env
std::vector< char const * > exp
std::unique_ptr< Config > makeNetworkConfig(uint32_t networkID)
RPCCallTestData & operator=(RPCCallTestData const &)=delete
RPCCallTestData(char const *description_, int line_, std::initializer_list< char const * > const &args_, Exception throwsWhat_, char const *exp_)
const Exception throwsWhat
Json::Value cmdToJSONRPC(std::vector< std::string > const &args, beast::Journal j, unsigned int apiVersion)
Given a rippled unit test rpc command, return the corresponding JSON.
std::string updateAPIVersionString(const char *const req, unsigned apiVersion)
RPCCallTestData(char const *description_, int line_, std::initializer_list< char const * > const &args_, Exception throwsWhat_, std::initializer_list< char const * > exp_)
static const RPCCallTestData rpcCallTestArray[]
void testRPCCall(unsigned apiVersion)
constexpr unsigned int apiMinimumSupportedVersion
Use hash_* containers for keys that do not need a cryptographically secure hashing algorithm.
constexpr unsigned int apiMaximumValidVersion
char const *const description
bool parse(std::string const &document, Value &root)
Read a Value from a JSON document.
A transaction testing environment.
BEAST_DEFINE_TESTSUITE(DeliverMin, app, ripple)