# Test miscellaneous commands

# do
$ rtxmlrpc do '' "false=" "foobar="
ERROR … Command "foobar" does not exist
RC=65
$ rtxmlrpc catch '' "false=" "foobar="
0
RC=0
# END

# convert.time_delta
$ rtxmlrpc --repr convert.time_delta '' +"$(echo $(( $(date +'%s') + 86400 + 40000)) )"
'1d1…h'
$ rtxmlrpc convert.time_delta '' +1527903580 +1527903500
1’20”
$ rtxmlrpc convert.time_delta '' +1527903500 +1527903580
1’20”
$ rtxmlrpc --repr convert.time_delta '' +86400 +86400
u'\u22c5 \u22c5\u22c5 '
$ rtxmlrpc --repr convert.time_delta '' +0
u'\u22c6 \u22c6\u22c6 '

$ rtxmlrpc convert.time_delta ''
ERROR … convert.time_delta takes … arguments
$ rtxmlrpc convert.time_delta '' abc
ERROR … convert.time_delta: … must be a value
$ rtxmlrpc convert.time_delta '' +0 abc
ERROR … convert.time_delta: … must be a value
$ rtxmlrpc convert.time_delta '' 123
ERROR … convert.time_delta: … must be a value
$ rtxmlrpc convert.time_delta '' +0 123
ERROR … convert.time_delta: … must be a value
# END

$ test "$(rtxmlrpc --repr system.env '' HOME)" = "'$HOME'"; echo $?
0
$ rtxmlrpc --repr system.env ''
ERROR … Wrong object type
$ rtxmlrpc --repr system.env '' ''
ERROR … system.env: Missing variable name

# $ rtxmlrpc --repr system.random '' --

$ rtxmlrpc --repr system.has '' 'system.has'
1
$ rtxmlrpc --repr system.has '' 'cute.kittens'
0

$ test "$(rtxmlrpc system.has.private_methods | wc -l)" -ge 50
RC=0
$ test "$(rtxmlrpc system.has.public_methods | wc -l)" -ge 500
RC=0
$ test "$( ( rtxmlrpc system.has.public_methods ; rtxmlrpc system.has.private_methods ) | sort | uniq -c | awk '{print $1}' | sort | uniq -c | wc -l )" -eq 1
RC=0
$ ( rtxmlrpc system.has.public_methods ; rtxmlrpc system.listMethods )   | sort | uniq -c | egrep -v '^ +2 ' | awk '{print $2}'
system.capabilities
system.getCapabilities
system.listMethods
system.methodExist
system.methodHelp
system.methodSignature
system.multicall
system.shutdown

$ rtxmlrpc --repr d.multicall.filtered 'default' "false="
[]
$ rtxmlrpc d.multicall.filtered 'default' "equal=d.hash=,cat=$(rtxmlrpc download_list | head -n1)" d.hash= | wc -l
1

$ rtxmlrpc --repr throttle.names ''
['', 'NULL'…]

# value
$ rtxmlrpc --repr value '' -- 11
11
$ rtxmlrpc --repr value '' -- 11 8
9
$ rtxmlrpc --repr value '' -- 2a 16
42
$ rtxmlrpc --repr value '' -- 2A 16
42
$ rtxmlrpc --repr value '' -- ''
0

$ rtxmlrpc --repr value '' -- 8 8
ERROR … Junk at end of number: 8
# END

$ rtxmlrpc --repr compare '' -- '' ''
ERROR … Can only compare a target pair
