@@ -695,37 +695,38 @@ def run_test(self):
695695 txid_feeReason_four = self .nodes [2 ].sendmany (dummy = '' , amounts = {address : 5 }, verbose = False )
696696 assert_equal (self .nodes [2 ].gettransaction (txid_feeReason_four )['txid' ], txid_feeReason_four )
697697
698- self .log .info ("Testing 'listunspent' outputs the parent descriptor(s) of coins" )
699- # Create two multisig descriptors, and send a UTxO each.
700- multi_a = descsum_create ("wsh(multi(1,tpubD6NzVbkrYhZ4YBNjUo96Jxd1u4XKWgnoc7LsA1jz3Yc2NiDbhtfBhaBtemB73n9V5vtJHwU6FVXwggTbeoJWQ1rzdz8ysDuQkpnaHyvnvzR/*,tpubD6NzVbkrYhZ4YHdDGMAYGaWxMSC1B6tPRTHuU5t3BcfcS3nrF523iFm5waFd1pP3ZvJt4Jr8XmCmsTBNx5suhcSgtzpGjGMASR3tau1hJz4/*))" )
701- multi_b = descsum_create ("wsh(multi(1,tpubD6NzVbkrYhZ4YHdDGMAYGaWxMSC1B6tPRTHuU5t3BcfcS3nrF523iFm5waFd1pP3ZvJt4Jr8XmCmsTBNx5suhcSgtzpGjGMASR3tau1hJz4/*,tpubD6NzVbkrYhZ4Y2RLiuEzNQkntjmsLpPYDm3LTRBYynUQtDtpzeUKAcb9sYthSFL3YR74cdFgF5mW8yKxv2W2CWuZDFR2dUpE5PF9kbrVXNZ/*))" )
702- addr_a = self .nodes [0 ].deriveaddresses (multi_a , 0 )[0 ]
703- addr_b = self .nodes [0 ].deriveaddresses (multi_b , 0 )[0 ]
704- txid_a = self .nodes [0 ].sendtoaddress (addr_a , 0.01 )
705- txid_b = self .nodes [0 ].sendtoaddress (addr_b , 0.01 )
706- self .generate (self .nodes [0 ], 1 , sync_fun = self .no_op )
707- # Now import the descriptors, make sure we can identify on which descriptor each coin was received.
708- self .nodes [0 ].createwallet (wallet_name = "wo" , descriptors = True , disable_private_keys = True )
709- wo_wallet = self .nodes [0 ].get_wallet_rpc ("wo" )
710- wo_wallet .importdescriptors ([
711- {
712- "desc" : multi_a ,
713- "active" : False ,
714- "timestamp" : "now" ,
715- },
716- {
717- "desc" : multi_b ,
718- "active" : False ,
719- "timestamp" : "now" ,
720- },
721- ])
722- coins = wo_wallet .listunspent (minconf = 0 )
723- assert_equal (len (coins ), 2 )
724- coin_a = next (c for c in coins if c ["txid" ] == txid_a )
725- assert_equal (coin_a ["parent_descs" ][0 ], multi_a )
726- coin_b = next (c for c in coins if c ["txid" ] == txid_b )
727- assert_equal (coin_b ["parent_descs" ][0 ], multi_b )
728- self .nodes [0 ].unloadwallet ("wo" )
698+ if self .options .descriptors :
699+ self .log .info ("Testing 'listunspent' outputs the parent descriptor(s) of coins" )
700+ # Create two multisig descriptors, and send a UTxO each.
701+ multi_a = descsum_create ("wsh(multi(1,tpubD6NzVbkrYhZ4YBNjUo96Jxd1u4XKWgnoc7LsA1jz3Yc2NiDbhtfBhaBtemB73n9V5vtJHwU6FVXwggTbeoJWQ1rzdz8ysDuQkpnaHyvnvzR/*,tpubD6NzVbkrYhZ4YHdDGMAYGaWxMSC1B6tPRTHuU5t3BcfcS3nrF523iFm5waFd1pP3ZvJt4Jr8XmCmsTBNx5suhcSgtzpGjGMASR3tau1hJz4/*))" )
702+ multi_b = descsum_create ("wsh(multi(1,tpubD6NzVbkrYhZ4YHdDGMAYGaWxMSC1B6tPRTHuU5t3BcfcS3nrF523iFm5waFd1pP3ZvJt4Jr8XmCmsTBNx5suhcSgtzpGjGMASR3tau1hJz4/*,tpubD6NzVbkrYhZ4Y2RLiuEzNQkntjmsLpPYDm3LTRBYynUQtDtpzeUKAcb9sYthSFL3YR74cdFgF5mW8yKxv2W2CWuZDFR2dUpE5PF9kbrVXNZ/*))" )
703+ addr_a = self .nodes [0 ].deriveaddresses (multi_a , 0 )[0 ]
704+ addr_b = self .nodes [0 ].deriveaddresses (multi_b , 0 )[0 ]
705+ txid_a = self .nodes [0 ].sendtoaddress (addr_a , 0.01 )
706+ txid_b = self .nodes [0 ].sendtoaddress (addr_b , 0.01 )
707+ self .generate (self .nodes [0 ], 1 , sync_fun = self .no_op )
708+ # Now import the descriptors, make sure we can identify on which descriptor each coin was received.
709+ self .nodes [0 ].createwallet (wallet_name = "wo" , descriptors = True , disable_private_keys = True )
710+ wo_wallet = self .nodes [0 ].get_wallet_rpc ("wo" )
711+ wo_wallet .importdescriptors ([
712+ {
713+ "desc" : multi_a ,
714+ "active" : False ,
715+ "timestamp" : "now" ,
716+ },
717+ {
718+ "desc" : multi_b ,
719+ "active" : False ,
720+ "timestamp" : "now" ,
721+ },
722+ ])
723+ coins = wo_wallet .listunspent (minconf = 0 )
724+ assert_equal (len (coins ), 2 )
725+ coin_a = next (c for c in coins if c ["txid" ] == txid_a )
726+ assert_equal (coin_a ["parent_descs" ][0 ], multi_a )
727+ coin_b = next (c for c in coins if c ["txid" ] == txid_b )
728+ assert_equal (coin_b ["parent_descs" ][0 ], multi_b )
729+ self .nodes [0 ].unloadwallet ("wo" )
729730
730731
731732if __name__ == '__main__' :
0 commit comments