aboutsummaryrefslogtreecommitdiff
path: root/test/functional
diff options
context:
space:
mode:
authorMarcoFalke <falke.marco@gmail.com>2021-11-15 13:19:58 +0100
committerMarcoFalke <falke.marco@gmail.com>2021-11-15 13:10:37 +0100
commitfa62207737657e76ba45d5bf826fc0ccac658df6 (patch)
tree3c1bcfd1d7f5e9cd597dc1ffedffad05c582b6fe /test/functional
parent41a1b5f58ca59d2177dcadf834efd187fa3fba52 (diff)
downloadbitcoin-fa62207737657e76ba45d5bf826fc0ccac658df6.tar.xz
test: Return the largest utxo in MiniWallet.get_utxo
Diffstat (limited to 'test/functional')
-rwxr-xr-xtest/functional/rpc_txoutproof.py2
-rw-r--r--test/functional/test_framework/wallet.py6
2 files changed, 3 insertions, 5 deletions
diff --git a/test/functional/rpc_txoutproof.py b/test/functional/rpc_txoutproof.py
index 3cb11b4c18..2aa3301b89 100755
--- a/test/functional/rpc_txoutproof.py
+++ b/test/functional/rpc_txoutproof.py
@@ -53,7 +53,7 @@ class MerkleBlockTest(BitcoinTestFramework):
assert_equal(self.nodes[0].verifytxoutproof(self.nodes[0].gettxoutproof([txid1, txid2])), txlist)
assert_equal(self.nodes[0].verifytxoutproof(self.nodes[0].gettxoutproof([txid1, txid2], blockhash)), txlist)
- txin_spent = miniwallet.get_utxo() # Get the change from txid2
+ txin_spent = miniwallet.get_utxo(txid=txid2) # Get the change from txid2
tx3 = miniwallet.send_self_transfer(from_node=self.nodes[0], utxo_to_spend=txin_spent)
txid3 = tx3['txid']
self.generate(self.nodes[0], 1)
diff --git a/test/functional/test_framework/wallet.py b/test/functional/test_framework/wallet.py
index 7de6994735..5f0b573c6e 100644
--- a/test/functional/test_framework/wallet.py
+++ b/test/functional/test_framework/wallet.py
@@ -133,10 +133,9 @@ class MiniWallet:
Args:
txid: get the first utxo we find from a specific transaction
-
- Note: Can be used to get the change output immediately after a send_self_transfer
"""
index = -1 # by default the last utxo
+ self._utxos = sorted(self._utxos, key=lambda k: (k['value'], -k['height'])) # Put the largest utxo last
if txid:
utxo = next(filter(lambda utxo: txid == utxo['txid'], self._utxos))
index = self._utxos.index(utxo)
@@ -172,8 +171,7 @@ class MiniWallet:
def create_self_transfer(self, *, fee_rate=Decimal("0.003"), from_node, utxo_to_spend=None, mempool_valid=True, locktime=0, sequence=0):
"""Create and return a tx with the specified fee_rate. Fee may be exact or at most one satoshi higher than needed."""
- self._utxos = sorted(self._utxos, key=lambda k: (k['value'], -k['height']))
- utxo_to_spend = utxo_to_spend or self._utxos.pop() # Pick the largest utxo (if none provided) and hope it covers the fee
+ utxo_to_spend = utxo_to_spend or self.get_utxo()
if self._priv_key is None:
vsize = Decimal(104) # anyone-can-spend
else: