From ef9ba0985e8373e9752df6745ebf1db7e4264204 Mon Sep 17 00:00:00 2001 From: SomberNight Date: Wed, 17 Jan 2024 20:37:31 +0000 Subject: [PATCH] wallet: (trivial) add asserts re args in bump_fee and friends for clearer exceptions in case of bugs related https://github.com/spesmilo/electrum/issues/8571 --- electrum/transaction.py | 1 + electrum/wallet.py | 3 +++ 2 files changed, 4 insertions(+) diff --git a/electrum/transaction.py b/electrum/transaction.py index 95fca9522..efb545a40 100644 --- a/electrum/transaction.py +++ b/electrum/transaction.py @@ -1858,6 +1858,7 @@ class PartialTransaction(Transaction): @classmethod def from_tx(cls, tx: Transaction) -> 'PartialTransaction': + assert tx res = cls() res._inputs = [PartialTxInput.from_txin(txin, strip_witness=True) for txin in tx.inputs()] diff --git a/electrum/wallet.py b/electrum/wallet.py index d2c9caf62..83069d196 100644 --- a/electrum/wallet.py +++ b/electrum/wallet.py @@ -2073,6 +2073,7 @@ class Abstract_Wallet(ABC, Logger, EventListener): note: it is the caller's responsibility to have already called tx.add_info_from_network(). Without that, all txins must be ismine. """ + assert tx if not isinstance(tx, PartialTransaction): tx = PartialTransaction.from_tx(tx) assert isinstance(tx, PartialTransaction) @@ -2300,6 +2301,7 @@ class Abstract_Wallet(ABC, Logger, EventListener): return True def cpfp(self, tx: Transaction, fee: int) -> Optional[PartialTransaction]: + assert tx txid = tx.txid() for i, o in enumerate(tx.outputs()): address, value = o.address, o.value @@ -2335,6 +2337,7 @@ class Abstract_Wallet(ABC, Logger, EventListener): note: it is the caller's responsibility to have already called tx.add_info_from_network(). Without that, all txins must be ismine. """ + assert tx if not isinstance(tx, PartialTransaction): tx = PartialTransaction.from_tx(tx) assert isinstance(tx, PartialTransaction)