diff options
author | Hennadii Stepanov <32963518+hebasto@users.noreply.github.com> | 2022-09-07 19:28:18 +0200 |
---|---|---|
committer | Hennadii Stepanov <32963518+hebasto@users.noreply.github.com> | 2022-09-07 19:31:17 +0200 |
commit | 1941ce6cd15a1123db8769d17a6fd9b1cb3debcc (patch) | |
tree | b7e3a6b77388bc50c6d01042af206d20ff5d134a /test/functional/wallet_basic.py | |
parent | fc44d1796e4df5824423d7d13de3082fe204db7d (diff) |
test: Fix `wallet_basic.py` for BDB-only wallets
Diffstat (limited to 'test/functional/wallet_basic.py')
-rwxr-xr-x | test/functional/wallet_basic.py | 63 |
1 files changed, 32 insertions, 31 deletions
diff --git a/test/functional/wallet_basic.py b/test/functional/wallet_basic.py index 5d3d78c2dc..917721fef8 100755 --- a/test/functional/wallet_basic.py +++ b/test/functional/wallet_basic.py @@ -695,37 +695,38 @@ class WalletTest(BitcoinTestFramework): txid_feeReason_four = self.nodes[2].sendmany(dummy='', amounts={address: 5}, verbose=False) assert_equal(self.nodes[2].gettransaction(txid_feeReason_four)['txid'], txid_feeReason_four) - self.log.info("Testing 'listunspent' outputs the parent descriptor(s) of coins") - # Create two multisig descriptors, and send a UTxO each. - multi_a = descsum_create("wsh(multi(1,tpubD6NzVbkrYhZ4YBNjUo96Jxd1u4XKWgnoc7LsA1jz3Yc2NiDbhtfBhaBtemB73n9V5vtJHwU6FVXwggTbeoJWQ1rzdz8ysDuQkpnaHyvnvzR/*,tpubD6NzVbkrYhZ4YHdDGMAYGaWxMSC1B6tPRTHuU5t3BcfcS3nrF523iFm5waFd1pP3ZvJt4Jr8XmCmsTBNx5suhcSgtzpGjGMASR3tau1hJz4/*))") - multi_b = descsum_create("wsh(multi(1,tpubD6NzVbkrYhZ4YHdDGMAYGaWxMSC1B6tPRTHuU5t3BcfcS3nrF523iFm5waFd1pP3ZvJt4Jr8XmCmsTBNx5suhcSgtzpGjGMASR3tau1hJz4/*,tpubD6NzVbkrYhZ4Y2RLiuEzNQkntjmsLpPYDm3LTRBYynUQtDtpzeUKAcb9sYthSFL3YR74cdFgF5mW8yKxv2W2CWuZDFR2dUpE5PF9kbrVXNZ/*))") - addr_a = self.nodes[0].deriveaddresses(multi_a, 0)[0] - addr_b = self.nodes[0].deriveaddresses(multi_b, 0)[0] - txid_a = self.nodes[0].sendtoaddress(addr_a, 0.01) - txid_b = self.nodes[0].sendtoaddress(addr_b, 0.01) - self.generate(self.nodes[0], 1, sync_fun=self.no_op) - # Now import the descriptors, make sure we can identify on which descriptor each coin was received. - self.nodes[0].createwallet(wallet_name="wo", descriptors=True, disable_private_keys=True) - wo_wallet = self.nodes[0].get_wallet_rpc("wo") - wo_wallet.importdescriptors([ - { - "desc": multi_a, - "active": False, - "timestamp": "now", - }, - { - "desc": multi_b, - "active": False, - "timestamp": "now", - }, - ]) - coins = wo_wallet.listunspent(minconf=0) - assert_equal(len(coins), 2) - coin_a = next(c for c in coins if c["txid"] == txid_a) - assert_equal(coin_a["parent_descs"][0], multi_a) - coin_b = next(c for c in coins if c["txid"] == txid_b) - assert_equal(coin_b["parent_descs"][0], multi_b) - self.nodes[0].unloadwallet("wo") + if self.options.descriptors: + self.log.info("Testing 'listunspent' outputs the parent descriptor(s) of coins") + # Create two multisig descriptors, and send a UTxO each. + multi_a = descsum_create("wsh(multi(1,tpubD6NzVbkrYhZ4YBNjUo96Jxd1u4XKWgnoc7LsA1jz3Yc2NiDbhtfBhaBtemB73n9V5vtJHwU6FVXwggTbeoJWQ1rzdz8ysDuQkpnaHyvnvzR/*,tpubD6NzVbkrYhZ4YHdDGMAYGaWxMSC1B6tPRTHuU5t3BcfcS3nrF523iFm5waFd1pP3ZvJt4Jr8XmCmsTBNx5suhcSgtzpGjGMASR3tau1hJz4/*))") + multi_b = descsum_create("wsh(multi(1,tpubD6NzVbkrYhZ4YHdDGMAYGaWxMSC1B6tPRTHuU5t3BcfcS3nrF523iFm5waFd1pP3ZvJt4Jr8XmCmsTBNx5suhcSgtzpGjGMASR3tau1hJz4/*,tpubD6NzVbkrYhZ4Y2RLiuEzNQkntjmsLpPYDm3LTRBYynUQtDtpzeUKAcb9sYthSFL3YR74cdFgF5mW8yKxv2W2CWuZDFR2dUpE5PF9kbrVXNZ/*))") + addr_a = self.nodes[0].deriveaddresses(multi_a, 0)[0] + addr_b = self.nodes[0].deriveaddresses(multi_b, 0)[0] + txid_a = self.nodes[0].sendtoaddress(addr_a, 0.01) + txid_b = self.nodes[0].sendtoaddress(addr_b, 0.01) + self.generate(self.nodes[0], 1, sync_fun=self.no_op) + # Now import the descriptors, make sure we can identify on which descriptor each coin was received. + self.nodes[0].createwallet(wallet_name="wo", descriptors=True, disable_private_keys=True) + wo_wallet = self.nodes[0].get_wallet_rpc("wo") + wo_wallet.importdescriptors([ + { + "desc": multi_a, + "active": False, + "timestamp": "now", + }, + { + "desc": multi_b, + "active": False, + "timestamp": "now", + }, + ]) + coins = wo_wallet.listunspent(minconf=0) + assert_equal(len(coins), 2) + coin_a = next(c for c in coins if c["txid"] == txid_a) + assert_equal(coin_a["parent_descs"][0], multi_a) + coin_b = next(c for c in coins if c["txid"] == txid_b) + assert_equal(coin_b["parent_descs"][0], multi_b) + self.nodes[0].unloadwallet("wo") if __name__ == '__main__': |