1
0

CoinChooser: avoid NotEnoughFunds if zero buckets are sufficient

closes #5752

Adapted from @JeremyRand's fix
This commit is contained in:
SomberNight
2019-11-11 15:15:04 +01:00
parent 5773097b08
commit 5549f3adbe
2 changed files with 24 additions and 1 deletions

View File

@@ -0,0 +1,20 @@
from electrum.coinchooser import CoinChooserPrivacy
from electrum.util import NotEnoughFunds
from . import ElectrumTestCase
class TestCoinChooser(ElectrumTestCase):
def test_bucket_candidates_with_empty_buckets(self):
def sufficient_funds(buckets, *, bucket_value_sum):
return True
coin_chooser = CoinChooserPrivacy()
self.assertEqual([[]], coin_chooser.bucket_candidates_any([], sufficient_funds))
self.assertEqual([[]], coin_chooser.bucket_candidates_prefer_confirmed([], sufficient_funds))
def sufficient_funds(buckets, *, bucket_value_sum):
return False
with self.assertRaises(NotEnoughFunds):
coin_chooser.bucket_candidates_any([], sufficient_funds)
with self.assertRaises(NotEnoughFunds):
coin_chooser.bucket_candidates_prefer_confirmed([], sufficient_funds)