Skip to content

Commit 4effd67

Browse files
committed
Merge #17387: wallet_importmulti: use addresses of the same type as being imported
b84e776 wallet_importmulti: use addresses of the same type as being imported (Andrew Chow) Pull request description: When constructing an import from the solving data of an address, make sure that the original address is the same type as the one that will be imported. See also: bitcoin/bitcoin#17374 (comment) Part of #17261 ACKs for top commit: Sjors: Code review ACK b84e776 meshcollider: Tested re-ACK b84e776 Tree-SHA512: 53c49c63af8cbade0116a62beddc77df1a411d8ed76571c3053f6aff096f41a5325421a188bab3dcacfda69bb28fdff6ba921ddd80f29c4abbadb3b58fda884c
2 parents a6f5b6f + b84e776 commit 4effd67

File tree

1 file changed

+12
-12
lines changed

1 file changed

+12
-12
lines changed

test/functional/wallet_importmulti.py

Lines changed: 12 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -675,7 +675,7 @@ def run_test(self):
675675
# Import pubkeys with key origin info
676676
self.log.info("Addresses should have hd keypath and master key id after import with key origin")
677677
pub_addr = self.nodes[1].getnewaddress()
678-
pub_addr = self.nodes[1].getnewaddress()
678+
pub_addr = self.nodes[1].getnewaddress(address_type="bech32")
679679
info = self.nodes[1].getaddressinfo(pub_addr)
680680
pub = info['pubkey']
681681
pub_keypath = info['hdkeypath']
@@ -693,7 +693,7 @@ def run_test(self):
693693
assert_equal(pub_import_info['hdkeypath'], pub_keypath)
694694

695695
# Import privkeys with key origin info
696-
priv_addr = self.nodes[1].getnewaddress()
696+
priv_addr = self.nodes[1].getnewaddress(address_type="bech32")
697697
info = self.nodes[1].getaddressinfo(priv_addr)
698698
priv = self.nodes[1].dumpprivkey(priv_addr)
699699
priv_keypath = info['hdkeypath']
@@ -742,8 +742,8 @@ def run_test(self):
742742
self.nodes[1].createwallet(wallet_name="noprivkeys", disable_private_keys=True)
743743
wrpc = self.nodes[1].get_wallet_rpc("noprivkeys")
744744

745-
addr1 = self.nodes[0].getnewaddress()
746-
addr2 = self.nodes[0].getnewaddress()
745+
addr1 = self.nodes[0].getnewaddress(address_type="bech32")
746+
addr2 = self.nodes[0].getnewaddress(address_type="bech32")
747747
pub1 = self.nodes[0].getaddressinfo(addr1)['pubkey']
748748
pub2 = self.nodes[0].getaddressinfo(addr2)['pubkey']
749749
result = wrpc.importmulti(
@@ -761,15 +761,15 @@ def run_test(self):
761761
assert result[0]['success']
762762
assert result[1]['success']
763763
assert_equal(wrpc.getwalletinfo()["keypoolsize"], 2)
764-
newaddr1 = wrpc.getnewaddress()
764+
newaddr1 = wrpc.getnewaddress(address_type="bech32")
765765
assert_equal(addr1, newaddr1)
766-
newaddr2 = wrpc.getnewaddress()
766+
newaddr2 = wrpc.getnewaddress(address_type="bech32")
767767
assert_equal(addr2, newaddr2)
768768

769769
# Import some public keys to the internal keypool of a no privkey wallet
770770
self.log.info("Adding pubkey to internal keypool of disableprivkey wallet")
771-
addr1 = self.nodes[0].getnewaddress()
772-
addr2 = self.nodes[0].getnewaddress()
771+
addr1 = self.nodes[0].getnewaddress(address_type="bech32")
772+
addr2 = self.nodes[0].getnewaddress(address_type="bech32")
773773
pub1 = self.nodes[0].getaddressinfo(addr1)['pubkey']
774774
pub2 = self.nodes[0].getaddressinfo(addr2)['pubkey']
775775
result = wrpc.importmulti(
@@ -789,15 +789,15 @@ def run_test(self):
789789
assert result[0]['success']
790790
assert result[1]['success']
791791
assert_equal(wrpc.getwalletinfo()["keypoolsize_hd_internal"], 2)
792-
newaddr1 = wrpc.getrawchangeaddress()
792+
newaddr1 = wrpc.getrawchangeaddress(address_type="bech32")
793793
assert_equal(addr1, newaddr1)
794-
newaddr2 = wrpc.getrawchangeaddress()
794+
newaddr2 = wrpc.getrawchangeaddress(address_type="bech32")
795795
assert_equal(addr2, newaddr2)
796796

797797
# Import a multisig and make sure the keys don't go into the keypool
798798
self.log.info('Imported scripts with pubkeys should not have their pubkeys go into the keypool')
799-
addr1 = self.nodes[0].getnewaddress()
800-
addr2 = self.nodes[0].getnewaddress()
799+
addr1 = self.nodes[0].getnewaddress(address_type="bech32")
800+
addr2 = self.nodes[0].getnewaddress(address_type="bech32")
801801
pub1 = self.nodes[0].getaddressinfo(addr1)['pubkey']
802802
pub2 = self.nodes[0].getaddressinfo(addr2)['pubkey']
803803
result = wrpc.importmulti(

0 commit comments

Comments
 (0)