test: Deduplicate logic in wallet_addresses RPC test

This commit is contained in:
Jack Grigg
2018-08-01 09:44:31 +01:00
parent fbd029d99d
commit d75e69da5a

View File

@@ -17,29 +17,21 @@ class WalletAddressesTest(BitcoinTestFramework):
def run_test(self): def run_test(self):
def addr_checks(default_type): def addr_checks(default_type):
# Check default type # Check default type, as well as explicit types
addr = self.nodes[0].z_getnewaddress() types_and_addresses = [
res = self.nodes[0].z_validateaddress(addr) (default_type, self.nodes[0].z_getnewaddress()),
assert(res['isvalid']) ('sprout', self.nodes[0].z_getnewaddress('sprout')),
assert(res['ismine']) ('sapling', self.nodes[0].z_getnewaddress('sapling')),
assert_equal(res['type'], default_type) ]
assert(addr in self.nodes[0].z_listaddresses())
# Check explicit Sprout type all_addresses = self.nodes[0].z_listaddresses()
addr = self.nodes[0].z_getnewaddress('sprout')
res = self.nodes[0].z_validateaddress(addr)
assert(res['isvalid'])
assert(res['ismine'])
assert_equal(res['type'], 'sprout')
assert(addr in self.nodes[0].z_listaddresses())
# Check explicit Sapling type for addr_type, addr in types_and_addresses:
addr = self.nodes[0].z_getnewaddress('sapling') res = self.nodes[0].z_validateaddress(addr)
res = self.nodes[0].z_validateaddress(addr) assert(res['isvalid'])
assert(res['isvalid']) assert(res['ismine'])
assert(res['ismine']) assert_equal(res['type'], addr_type)
assert_equal(res['type'], 'sapling') assert(addr in all_addresses)
assert(addr in self.nodes[0].z_listaddresses())
# Sanity-check the test harness # Sanity-check the test harness
assert_equal(self.nodes[0].getblockcount(), 200) assert_equal(self.nodes[0].getblockcount(), 200)