aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorfanquake <fanquake@gmail.com>2019-09-20 16:42:24 +0800
committerfanquake <fanquake@gmail.com>2019-09-20 16:53:20 +0800
commita73775e4d5902fe7a90116f45de71ddda3e2bacd (patch)
tree5e90d22b13a1ace98bd64bc34e5062538202a0ed
parent587003d380a0c9261e9973052d6a5ce644e37973 (diff)
parent96299a9d6c0a6b9125a58a63ee3147e55d1b086b (diff)
downloadbitcoin-a73775e4d5902fe7a90116f45de71ddda3e2bacd.tar.xz
Merge #16917: tests: Move common function assert_approx() into util.py
96299a9d6c0a6b9125a58a63ee3147e55d1b086b Test: Move common function assert_approx() into util.py (fridokus) Pull request description: To reduce code duplication, move `assert_approx` into common framework `util.py`. `assert_approx()` is used in two functional tests. ACKs for top commit: theStack: ACK 96299a9 practicalswift: ACK 96299a9d6c0a6b9125a58a63ee3147e55d1b086b -- DRY is good and diff looks correct fanquake: ACK 96299a9d6c0a6b9125a58a63ee3147e55d1b086b - thanks for contributing 🍻 Tree-SHA512: 8e9d397222c49536c7b3d6d0756cc5af17113e5af8707ac48a500fff1811167fb2e03f3c0445b0b9e80f34935f4d57cfb935c4790f6f5463a32a67df5f736939
-rw-r--r--test/functional/test_framework/util.py7
-rwxr-xr-xtest/functional/wallet_avoidreuse.py8
-rwxr-xr-xtest/functional/wallet_groups.py7
3 files changed, 9 insertions, 13 deletions
diff --git a/test/functional/test_framework/util.py b/test/functional/test_framework/util.py
index 3175872b00..1c254b6755 100644
--- a/test/functional/test_framework/util.py
+++ b/test/functional/test_framework/util.py
@@ -25,6 +25,13 @@ logger = logging.getLogger("TestFramework.utils")
# Assert functions
##################
+def assert_approx(v, vexp, vspan=0.00001):
+ """Assert that `v` is within `vspan` of `vexp`"""
+ if v < vexp - vspan:
+ raise AssertionError("%s < [%s..%s]" % (str(v), str(vexp - vspan), str(vexp + vspan)))
+ if v > vexp + vspan:
+ raise AssertionError("%s > [%s..%s]" % (str(v), str(vexp - vspan), str(vexp + vspan)))
+
def assert_fee_amount(fee, tx_size, fee_per_kB):
"""Assert the fee was in range"""
target_fee = round(tx_size * fee_per_kB / 1000, 8)
diff --git a/test/functional/wallet_avoidreuse.py b/test/functional/wallet_avoidreuse.py
index e3aa6705e5..3c8064ea2d 100755
--- a/test/functional/wallet_avoidreuse.py
+++ b/test/functional/wallet_avoidreuse.py
@@ -6,18 +6,12 @@
from test_framework.test_framework import BitcoinTestFramework
from test_framework.util import (
+ assert_approx,
assert_equal,
assert_raises_rpc_error,
connect_nodes,
)
-# TODO: Copied from wallet_groups.py -- should perhaps move into util.py
-def assert_approx(v, vexp, vspan=0.00001):
- if v < vexp - vspan:
- raise AssertionError("%s < [%s..%s]" % (str(v), str(vexp - vspan), str(vexp + vspan)))
- if v > vexp + vspan:
- raise AssertionError("%s > [%s..%s]" % (str(v), str(vexp - vspan), str(vexp + vspan)))
-
def reset_balance(node, discardaddr):
'''Throw away all owned coins by the node so it gets a balance of 0.'''
balance = node.getbalance(avoid_reuse=False)
diff --git a/test/functional/wallet_groups.py b/test/functional/wallet_groups.py
index 5452433acf..d1178611bd 100755
--- a/test/functional/wallet_groups.py
+++ b/test/functional/wallet_groups.py
@@ -7,15 +7,10 @@
from test_framework.test_framework import BitcoinTestFramework
from test_framework.messages import CTransaction, FromHex, ToHex
from test_framework.util import (
+ assert_approx,
assert_equal,
)
-def assert_approx(v, vexp, vspan=0.00001):
- if v < vexp - vspan:
- raise AssertionError("%s < [%s..%s]" % (str(v), str(vexp - vspan), str(vexp + vspan)))
- if v > vexp + vspan:
- raise AssertionError("%s > [%s..%s]" % (str(v), str(vexp - vspan), str(vexp + vspan)))
-
class WalletGroupTest(BitcoinTestFramework):
def set_test_params(self):
self.setup_clean_chain = True