mirror of
https://github.com/bitcoin/bitcoin.git
synced 2025-01-25 10:43:19 -03:00
test: Add check that newkeypool flushes change addresses too
This commit is contained in:
parent
84fa19c77a
commit
6531599f42
2 changed files with 9 additions and 5 deletions
|
@ -141,12 +141,16 @@ class KeyPoolTest(BitcoinTestFramework):
|
|||
if not self.options.descriptors:
|
||||
# Check that newkeypool entirely flushes the keypool
|
||||
start_keypath = nodes[0].getaddressinfo(nodes[0].getnewaddress())['hdkeypath']
|
||||
start_change_keypath = nodes[0].getaddressinfo(nodes[0].getrawchangeaddress())['hdkeypath']
|
||||
# flush keypool and get new addresses
|
||||
nodes[0].newkeypool()
|
||||
end_keypath = nodes[0].getaddressinfo(nodes[0].getnewaddress())['hdkeypath']
|
||||
end_change_keypath = nodes[0].getaddressinfo(nodes[0].getrawchangeaddress())['hdkeypath']
|
||||
# The new keypath index should be 100 more than the old one
|
||||
keypath_prefix = start_keypath.rsplit('/', 1)[0]
|
||||
new_index = int(start_keypath.rsplit('/', 1)[1][:-1]) + 100
|
||||
assert_equal(end_keypath, keypath_prefix + '/' + str(new_index) + '\'')
|
||||
new_change_index = int(start_change_keypath.rsplit('/', 1)[1][:-1]) + 100
|
||||
assert_equal(end_keypath, "m/0'/0'/" + str(new_index) + "'")
|
||||
assert_equal(end_change_keypath, "m/0'/1'/" + str(new_change_index) + "'")
|
||||
|
||||
# create a blank wallet
|
||||
nodes[0].createwallet(wallet_name='w2', blank=True, disable_private_keys=True)
|
||||
|
|
|
@ -234,13 +234,13 @@ class UpgradeWalletTest(BitcoinTestFramework):
|
|||
assert_equal(1, hd_chain_version)
|
||||
seed_id = bytearray(seed_id)
|
||||
seed_id.reverse()
|
||||
old_kvs = new_kvs
|
||||
# New keys should be HD (the two old keys have been flushed)
|
||||
|
||||
# New keys (including change) should be HD (the two old keys have been flushed)
|
||||
info = wallet.getaddressinfo(wallet.getnewaddress())
|
||||
assert_equal(seed_id.hex(), info['hdseedid'])
|
||||
assert_equal('m/0\'/0\'/0\'', info['hdkeypath'])
|
||||
prev_seed_id = info['hdseedid']
|
||||
# Change key should be the same keypool
|
||||
# Change key should be HD and from the same keypool
|
||||
info = wallet.getaddressinfo(wallet.getrawchangeaddress())
|
||||
assert_equal(prev_seed_id, info['hdseedid'])
|
||||
assert_equal('m/0\'/0\'/1\'', info['hdkeypath'])
|
||||
|
|
Loading…
Add table
Reference in a new issue