diff options
author | Sebastian Falbesoner <sebastian.falbesoner@gmail.com> | 2021-12-08 19:57:43 +0100 |
---|---|---|
committer | Sebastian Falbesoner <sebastian.falbesoner@gmail.com> | 2021-12-08 19:57:43 +0100 |
commit | 84bc35d7a5b91c50cb58ff844e7fc7d9f026cc76 (patch) | |
tree | 9f27e8fc8e0484a031875d57530a8e1338b3ac59 | |
parent | f727d814bd8df5a5346c128dd4573e457c1970e1 (diff) |
test: feature_rbf.py: check specified wallet type availability
The test currently leads to a failure if in general wallet
support is compiled, but the library for the specified type
(BDB/SQLite) is not, i.e. if started with the
`--legacy-wallet` parameter, but bitcoind is compiled
without BDB support.
Fix this by checking if the specified wallet type (BDB for
legacy wallet, SQLite for descriptor wallet) is available.
Also move the helper `is_specified_wallet_compiled()` to the
test framework's class BitcoinTestFramework first, so it can
be reused.
-rwxr-xr-x | test/functional/feature_rbf.py | 2 | ||||
-rwxr-xr-x | test/functional/interface_bitcoin_cli.py | 6 | ||||
-rwxr-xr-x | test/functional/test_framework/test_framework.py | 8 |
3 files changed, 9 insertions, 7 deletions
diff --git a/test/functional/feature_rbf.py b/test/functional/feature_rbf.py index e540cc1574..5722e71c7a 100755 --- a/test/functional/feature_rbf.py +++ b/test/functional/feature_rbf.py @@ -538,7 +538,7 @@ class ReplaceByFeeTest(BitcoinTestFramework): assert_equal(json0["vin"][0]["sequence"], 4294967293) assert_equal(json1["vin"][0]["sequence"], 4294967295) - if self.is_wallet_compiled(): + if self.is_specified_wallet_compiled(): self.init_wallet(node=0) rawtx2 = self.nodes[0].createrawtransaction([], outs) frawtx2a = self.nodes[0].fundrawtransaction(rawtx2, {"replaceable": True}) diff --git a/test/functional/interface_bitcoin_cli.py b/test/functional/interface_bitcoin_cli.py index 034edd709e..2ea9ebfc98 100755 --- a/test/functional/interface_bitcoin_cli.py +++ b/test/functional/interface_bitcoin_cli.py @@ -66,12 +66,6 @@ def cli_get_info_string_to_dict(cli_get_info_string): class TestBitcoinCli(BitcoinTestFramework): - def is_specified_wallet_compiled(self): - if self.options.descriptors: - return self.is_sqlite_compiled() - else: - return self.is_bdb_compiled() - def set_test_params(self): self.setup_clean_chain = True self.num_nodes = 1 diff --git a/test/functional/test_framework/test_framework.py b/test/functional/test_framework/test_framework.py index 6746fbf9f9..8f75255caf 100755 --- a/test/functional/test_framework/test_framework.py +++ b/test/functional/test_framework/test_framework.py @@ -886,6 +886,14 @@ class BitcoinTestFramework(metaclass=BitcoinTestMetaClass): """Checks whether the wallet module was compiled.""" return self.config["components"].getboolean("ENABLE_WALLET") + def is_specified_wallet_compiled(self): + """Checks whether wallet support for the specified type + (legacy or descriptor wallet) was compiled.""" + if self.options.descriptors: + return self.is_sqlite_compiled() + else: + return self.is_bdb_compiled() + def is_wallet_tool_compiled(self): """Checks whether bitcoin-wallet was compiled.""" return self.config["components"].getboolean("ENABLE_WALLET_TOOL") |