From a7d94ed55fb7c931b4cc9724d97305feb7c129a6 Mon Sep 17 00:00:00 2001 From: fanquake Date: Fri, 20 Sep 2019 16:42:24 +0800 Subject: [PATCH] Merge #16917: tests: Move common function assert_approx() into util.py MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 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 --- test/functional/test_framework/util.py | 7 +++++++ test/functional/wallet_groups.py | 7 +------ 2 files changed, 8 insertions(+), 6 deletions(-) diff --git a/test/functional/test_framework/util.py b/test/functional/test_framework/util.py index 5dd62282ab..cabb2182cb 100644 --- a/test/functional/test_framework/util.py +++ b/test/functional/test_framework/util.py @@ -37,6 +37,13 @@ def set_timeout_scale(_timeout_scale): # 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_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