Fix failing key payment for null max key fee
This commit is contained in:
parent
cb5eb8983b
commit
c035837a14
2 changed files with 25 additions and 3 deletions
|
@ -401,8 +401,8 @@ class StreamManager:
|
||||||
), 5)
|
), 5)
|
||||||
max_fee_amount = round(exchange_rate_manager.convert_currency(
|
max_fee_amount = round(exchange_rate_manager.convert_currency(
|
||||||
self.config.max_key_fee['currency'], "LBC", Decimal(self.config.max_key_fee['amount'])
|
self.config.max_key_fee['currency'], "LBC", Decimal(self.config.max_key_fee['amount'])
|
||||||
), 5)
|
), 5) if self.config.max_key_fee else None
|
||||||
if fee_amount > max_fee_amount:
|
if max_fee_amount and fee_amount > max_fee_amount:
|
||||||
msg = f"fee of {fee_amount} exceeds max configured to allow of {max_fee_amount}"
|
msg = f"fee of {fee_amount} exceeds max configured to allow of {max_fee_amount}"
|
||||||
log.warning(msg)
|
log.warning(msg)
|
||||||
raise KeyFeeAboveMaxAllowed(msg)
|
raise KeyFeeAboveMaxAllowed(msg)
|
||||||
|
|
|
@ -76,8 +76,14 @@ def get_mock_wallet(sd_hash, storage, balance=10.0, fee=None):
|
||||||
claim['permanent_url']: claim
|
claim['permanent_url']: claim
|
||||||
}
|
}
|
||||||
|
|
||||||
mock_wallet = mock.Mock(spec=LbryWalletManager)
|
async def mock_send_amount_to_address(*args):
|
||||||
|
transaction = mock.Mock()
|
||||||
|
transaction.raw = b'raw transaction'
|
||||||
|
return transaction
|
||||||
|
|
||||||
|
mock_wallet = mock.Mock(spec=LbryWalletManager, return_value=asyncio.Future())
|
||||||
mock_wallet.ledger.resolve = mock_resolve
|
mock_wallet.ledger.resolve = mock_resolve
|
||||||
|
mock_wallet.send_amount_to_address = mock_send_amount_to_address
|
||||||
mock_wallet.ledger.network.client.server = ('fakespv.lbry.com', 50001)
|
mock_wallet.ledger.network.client.server = ('fakespv.lbry.com', 50001)
|
||||||
|
|
||||||
async def get_balance(*_):
|
async def get_balance(*_):
|
||||||
|
@ -323,6 +329,22 @@ class TestStreamManager(BlobExchangeTestBase):
|
||||||
await self.setup_stream_manager(1000000.0, fee)
|
await self.setup_stream_manager(1000000.0, fee)
|
||||||
await self._test_download_error_on_start(KeyFeeAboveMaxAllowed, "")
|
await self._test_download_error_on_start(KeyFeeAboveMaxAllowed, "")
|
||||||
|
|
||||||
|
async def test_null_max_key_fee(self):
|
||||||
|
fee = {
|
||||||
|
'currency': 'LBC',
|
||||||
|
'amount': 0.001,
|
||||||
|
'address': 'bYFeMtSL7ARuG1iMpjFyrnTe4oJHSAVNXF',
|
||||||
|
'version': '_0_0_1'
|
||||||
|
}
|
||||||
|
self.client_config.max_key_fee = None
|
||||||
|
error = None
|
||||||
|
await self.setup_stream_manager(1000000.0, fee)
|
||||||
|
try:
|
||||||
|
await self.stream_manager.download_stream_from_uri(self.uri, self.exchange_rate_manager)
|
||||||
|
except Exception as err:
|
||||||
|
error = err
|
||||||
|
self.assertIsNone(error)
|
||||||
|
|
||||||
async def test_resolve_error(self):
|
async def test_resolve_error(self):
|
||||||
await self.setup_stream_manager()
|
await self.setup_stream_manager()
|
||||||
self.uri = "fake"
|
self.uri = "fake"
|
||||||
|
|
Loading…
Reference in a new issue