Changeset View
Changeset View
Standalone View
Standalone View
test/functional/wallet_hd.py
Show First 20 Lines • Show All 91 Lines • ▼ Show 20 Lines | def run_test(self): | ||||
hd_info_2 = self.nodes[1].getaddressinfo(hd_add_2) | hd_info_2 = self.nodes[1].getaddressinfo(hd_add_2) | ||||
assert_equal(hd_info_2["hdkeypath"], "m/0'/0'/" + str(i) + "'") | assert_equal(hd_info_2["hdkeypath"], "m/0'/0'/" + str(i) + "'") | ||||
assert_equal(hd_info_2["hdseedid"], masterkeyid) | assert_equal(hd_info_2["hdseedid"], masterkeyid) | ||||
assert_equal(hd_add, hd_add_2) | assert_equal(hd_add, hd_add_2) | ||||
connect_nodes(self.nodes[0], self.nodes[1]) | connect_nodes(self.nodes[0], self.nodes[1]) | ||||
self.sync_all() | self.sync_all() | ||||
# Needs rescan | # Needs rescan | ||||
self.stop_node(1) | self.restart_node(1, extra_args=self.extra_args[1] + ['-rescan']) | ||||
self.start_node(1, extra_args=self.extra_args[1] + ['-rescan']) | |||||
assert_equal(self.nodes[1].getbalance(), NUM_HD_ADDS + 1) | assert_equal(self.nodes[1].getbalance(), NUM_HD_ADDS + 1) | ||||
# Try a RPC based rescan | # Try a RPC based rescan | ||||
self.stop_node(1) | self.stop_node(1) | ||||
shutil.rmtree( | shutil.rmtree( | ||||
os.path.join( | os.path.join( | ||||
self.nodes[1].datadir, | self.nodes[1].datadir, | ||||
self.chain, | self.chain, | ||||
▲ Show 20 Lines • Show All 83 Lines • ▼ Show 20 Lines | def run_test(self): | ||||
assert_raises_rpc_error(-5, "Already have this key", | assert_raises_rpc_error(-5, "Already have this key", | ||||
self.nodes[1].sethdseed, False, self.nodes[1].dumpprivkey(self.nodes[1].getnewaddress())) | self.nodes[1].sethdseed, False, self.nodes[1].dumpprivkey(self.nodes[1].getnewaddress())) | ||||
self.log.info( | self.log.info( | ||||
'Test sethdseed restoring with keys outside of the initial keypool') | 'Test sethdseed restoring with keys outside of the initial keypool') | ||||
self.nodes[0].generate(10) | self.nodes[0].generate(10) | ||||
# Restart node 1 with keypool of 3 and a different wallet | # Restart node 1 with keypool of 3 and a different wallet | ||||
self.nodes[1].createwallet(wallet_name='origin', blank=True) | self.nodes[1].createwallet(wallet_name='origin', blank=True) | ||||
self.stop_node(1) | self.restart_node(1, extra_args=['-keypool=3', '-wallet=origin']) | ||||
self.start_node(1, extra_args=['-keypool=3', '-wallet=origin']) | |||||
connect_nodes(self.nodes[0], self.nodes[1]) | connect_nodes(self.nodes[0], self.nodes[1]) | ||||
# sethdseed restoring and seeing txs to addresses out of the | # sethdseed restoring and seeing txs to addresses out of the | ||||
# keypool | # keypool | ||||
origin_rpc = self.nodes[1].get_wallet_rpc('origin') | origin_rpc = self.nodes[1].get_wallet_rpc('origin') | ||||
seed = self.nodes[0].dumpprivkey(self.nodes[0].getnewaddress()) | seed = self.nodes[0].dumpprivkey(self.nodes[0].getnewaddress()) | ||||
origin_rpc.sethdseed(True, seed) | origin_rpc.sethdseed(True, seed) | ||||
▲ Show 20 Lines • Show All 111 Lines • Show Last 20 Lines |