Changeset View
Changeset View
Standalone View
Standalone View
test/functional/receivedby.py
Show First 20 Lines • Show All 43 Lines • ▼ Show 20 Lines | def run_test(self): | ||||
assert_array_result(self.nodes[1].listreceivedbyaddress(5), | assert_array_result(self.nodes[1].listreceivedbyaddress(5), | ||||
{"address": addr}, | {"address": addr}, | ||||
{"address": addr, "account": "", "amount": Decimal("0.1"), "confirmations": 10, "txids": [txid, ]}) | {"address": addr, "account": "", "amount": Decimal("0.1"), "confirmations": 10, "txids": [txid, ]}) | ||||
# With min confidence > 10, should not find Tx | # With min confidence > 10, should not find Tx | ||||
assert_array_result(self.nodes[1].listreceivedbyaddress(11), { | assert_array_result(self.nodes[1].listreceivedbyaddress(11), { | ||||
"address": addr}, {}, True) | "address": addr}, {}, True) | ||||
# Empty Tx | # Empty Tx | ||||
addr = self.nodes[1].getnewaddress() | empty_addr = self.nodes[1].getnewaddress() | ||||
assert_array_result(self.nodes[1].listreceivedbyaddress(0, True), | assert_array_result(self.nodes[1].listreceivedbyaddress(0, True), | ||||
{"address": addr}, | {"address": empty_addr}, | ||||
{"address": addr, "account": "", "amount": 0, "confirmations": 0, "txids": []}) | {"address": empty_addr, "account": "", "amount": 0, "confirmations": 0, "txids": []}) | ||||
# Test Address filtering | |||||
# Only on addr | |||||
expected = {"address": addr, "account": "", "amount": Decimal( | |||||
"0.1"), "confirmations": 10, "txids": [txid, ]} | |||||
res = self.nodes[1].listreceivedbyaddress( | |||||
minconf=0, include_empty=True, include_watchonly=True, address_filter=addr) | |||||
assert_array_result(res, {"address": addr}, expected) | |||||
assert_equal(len(res), 1) | |||||
# Error on invalid address | |||||
assert_raises_rpc_error(-4, "address_filter parameter was invalid", | |||||
self.nodes[1].listreceivedbyaddress, minconf=0, include_empty=True, include_watchonly=True, address_filter="bamboozling") | |||||
# Another address receive money | |||||
res = self.nodes[1].listreceivedbyaddress(0, True, True) | |||||
assert_equal(len(res), 2) # Right now 2 entries | |||||
other_addr = self.nodes[1].getnewaddress() | |||||
txid2 = self.nodes[0].sendtoaddress(other_addr, 0.1) | |||||
self.nodes[0].generate(1) | |||||
self.sync_all() | |||||
# Same test as above should still pass | |||||
expected = {"address": addr, "account": "", "amount": Decimal( | |||||
"0.1"), "confirmations": 11, "txids": [txid, ]} | |||||
res = self.nodes[1].listreceivedbyaddress(0, True, True, addr) | |||||
assert_array_result(res, {"address": addr}, expected) | |||||
assert_equal(len(res), 1) | |||||
# Same test as above but with other_addr should still pass | |||||
expected = {"address": other_addr, "account": "", "amount": Decimal( | |||||
"0.1"), "confirmations": 1, "txids": [txid2, ]} | |||||
res = self.nodes[1].listreceivedbyaddress(0, True, True, other_addr) | |||||
assert_array_result(res, {"address": other_addr}, expected) | |||||
assert_equal(len(res), 1) | |||||
# Should be two entries though without filter | |||||
res = self.nodes[1].listreceivedbyaddress(0, True, True) | |||||
assert_equal(len(res), 3) # Became 3 entries | |||||
# Not on random addr | |||||
# note on node[0]! just a random addr | |||||
other_addr = self.nodes[0].getnewaddress() | |||||
res = self.nodes[1].listreceivedbyaddress(0, True, True, other_addr) | |||||
assert_equal(len(res), 0) | |||||
self.log.info("getreceivedbyaddress Test") | self.log.info("getreceivedbyaddress Test") | ||||
# Send from node 0 to 1 | # Send from node 0 to 1 | ||||
addr = self.nodes[1].getnewaddress() | addr = self.nodes[1].getnewaddress() | ||||
txid = self.nodes[0].sendtoaddress(addr, 0.1) | txid = self.nodes[0].sendtoaddress(addr, 0.1) | ||||
self.sync_all() | self.sync_all() | ||||
▲ Show 20 Lines • Show All 67 Lines • Show Last 20 Lines |