|
|
@ -477,6 +477,15 @@ def random_transaction(nodes, amount, min_fee, fee_increment, fee_variants): |
|
|
|
|
|
|
|
|
|
|
|
return (txid, signresult["hex"], fee) |
|
|
|
return (txid, signresult["hex"], fee) |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
def assert_fee_amount(fee, tx_size, fee_per_kB): |
|
|
|
|
|
|
|
"""Assert the fee was in range""" |
|
|
|
|
|
|
|
target_fee = tx_size * fee_per_kB / 1000 |
|
|
|
|
|
|
|
if fee < target_fee: |
|
|
|
|
|
|
|
raise AssertionError("Fee of %s BTC too low! (Should be %s BTC)"%(str(fee), str(target_fee))) |
|
|
|
|
|
|
|
# allow the wallet's estimation to be at most 2 bytes off |
|
|
|
|
|
|
|
if fee > (tx_size + 2) * fee_per_kB / 1000: |
|
|
|
|
|
|
|
raise AssertionError("Fee of %s BTC too high! (Should be %s BTC)"%(str(fee), str(target_fee))) |
|
|
|
|
|
|
|
|
|
|
|
def assert_equal(thing1, thing2): |
|
|
|
def assert_equal(thing1, thing2): |
|
|
|
if thing1 != thing2: |
|
|
|
if thing1 != thing2: |
|
|
|
raise AssertionError("%s != %s"%(str(thing1),str(thing2))) |
|
|
|
raise AssertionError("%s != %s"%(str(thing1),str(thing2))) |
|
|
|