mirror of
https://github.com/bitcoin/bitcoin.git
synced 2025-12-04 17:52:25 +01:00
test: update satoshi_round function
Refactor satoshi_round function to accept different rounding modes. Updated call site to use the revised `satoshi_round` function. Co-authored-by: Kate Salazar <52637275+katesalazar@users.noreply.github.com>
This commit is contained in:
@@ -5,7 +5,7 @@
|
||||
"""Helpful routines for regression testing."""
|
||||
|
||||
from base64 import b64encode
|
||||
from decimal import Decimal, ROUND_DOWN
|
||||
from decimal import Decimal
|
||||
from subprocess import CalledProcessError
|
||||
import hashlib
|
||||
import inspect
|
||||
@@ -20,7 +20,9 @@ import time
|
||||
from . import coverage
|
||||
from .authproxy import AuthServiceProxy, JSONRPCException
|
||||
from collections.abc import Callable
|
||||
from typing import Optional
|
||||
from typing import Optional, Union
|
||||
|
||||
SATOSHI_PRECISION = Decimal('0.00000001')
|
||||
|
||||
logger = logging.getLogger("TestFramework.utils")
|
||||
|
||||
@@ -237,8 +239,9 @@ def get_fee(tx_size, feerate_btc_kvb):
|
||||
return target_fee_sat / Decimal(1e8) # Return result in BTC
|
||||
|
||||
|
||||
def satoshi_round(amount):
|
||||
return Decimal(amount).quantize(Decimal('0.00000001'), rounding=ROUND_DOWN)
|
||||
def satoshi_round(amount: Union[int, float, str], *, rounding: str) -> Decimal:
|
||||
"""Rounds a Decimal amount to the nearest satoshi using the specified rounding mode."""
|
||||
return Decimal(amount).quantize(SATOSHI_PRECISION, rounding=rounding)
|
||||
|
||||
|
||||
def wait_until_helper_internal(predicate, *, attempts=float('inf'), timeout=float('inf'), lock=None, timeout_factor=1.0):
|
||||
|
||||
Reference in New Issue
Block a user