From ffbcd2b6154ab7e66fb4765b23fe376b95b0b31d Mon Sep 17 00:00:00 2001 From: The MMGen Project Date: Sat, 29 Nov 2025 09:12:49 +0000 Subject: [PATCH] autosign: `die_wrong_num_txs()`: cleanup --- mmgen/autosign.py | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/mmgen/autosign.py b/mmgen/autosign.py index 3abf0b0d..5ad54117 100755 --- a/mmgen/autosign.py +++ b/mmgen/autosign.py @@ -272,13 +272,16 @@ class Signable: return getattr(self, attrname) def die_wrong_num_txs(self, tx_type, *, msg=None, desc=None, show_dir=False): - num_txs = len(getattr(self, tx_type)) + match len(getattr(self, tx_type)): # num_txs + case 0: subj, suf, pred = ('No', 's', 'present') + case 1: subj, suf, pred = ('One', '', 'already present') + case _: subj, suf, pred = ('More than one', '', 'already present') die('AutosignTXError', '{m}{a} {b} transaction{c} {d} {e}!'.format( m = msg + '\n' if msg else '', - a = 'One' if num_txs == 1 else 'More than one' if num_txs else 'No', + a = subj, b = desc or tx_type, - c = suf(num_txs), - d = 'already present' if num_txs else 'present', + c = suf, + d = pred, e = f'in ‘{getattr(self.parent, self.dir_name)}’' if show_dir else 'on removable device'))