aboutsummaryrefslogtreecommitdiff
path: root/test/functional/test_runner.py
diff options
context:
space:
mode:
Diffstat (limited to 'test/functional/test_runner.py')
-rwxr-xr-xtest/functional/test_runner.py17
1 files changed, 15 insertions, 2 deletions
diff --git a/test/functional/test_runner.py b/test/functional/test_runner.py
index bcedc0c9af..c834086b6f 100755
--- a/test/functional/test_runner.py
+++ b/test/functional/test_runner.py
@@ -69,11 +69,14 @@ if os.name != 'nt' or sys.getwindowsversion() >= (10, 0, 14393): #type:ignore
TEST_EXIT_PASSED = 0
TEST_EXIT_SKIPPED = 77
+# List of framework modules containing unit tests. Should be kept in sync with
+# the output of `git grep unittest.TestCase ./test/functional/test_framework`
TEST_FRAMEWORK_MODULES = [
"address",
"blocktools",
"muhash",
"key",
+ "ripemd160",
"script",
"segwit_addr",
"util",
@@ -163,11 +166,14 @@ BASE_SCRIPTS = [
'p2p_compactblocks_blocksonly.py',
'wallet_hd.py --legacy-wallet',
'wallet_hd.py --descriptors',
+ 'wallet_blank.py --legacy-wallet',
+ 'wallet_blank.py --descriptors',
'wallet_keypool_topup.py --legacy-wallet',
'wallet_keypool_topup.py --descriptors',
'wallet_fast_rescan.py --descriptors',
'interface_zmq.py',
'rpc_invalid_address_message.py',
+ 'rpc_validateaddress.py',
'interface_bitcoin_cli.py --legacy-wallet',
'interface_bitcoin_cli.py --descriptors',
'feature_bind_extra.py',
@@ -192,6 +198,8 @@ BASE_SCRIPTS = [
'wallet_watchonly.py --legacy-wallet',
'wallet_watchonly.py --usecli --legacy-wallet',
'wallet_reorgsrestore.py',
+ 'wallet_conflicts.py --legacy-wallet',
+ 'wallet_conflicts.py --descriptors',
'interface_http.py',
'interface_rpc.py',
'interface_usdt_coinselection.py',
@@ -320,6 +328,7 @@ BASE_SCRIPTS = [
'feature_includeconf.py',
'feature_addrman.py',
'feature_asmap.py',
+ 'feature_fastprune.py',
'mempool_unbroadcast.py',
'mempool_compatibility.py',
'mempool_accept_wtxid.py',
@@ -524,6 +533,12 @@ def run_tests(*, test_list, src_dir, build_dir, tmpdir, jobs=1, enable_coverage=
# Test Framework Tests
print("Running Unit Tests for Test Framework Modules")
+
+ tests_dir = src_dir + '/test/functional/'
+ # This allows `test_runner.py` to work from an out-of-source build directory using a symlink,
+ # a hard link or a copy on any platform. See https://github.com/bitcoin/bitcoin/pull/27561.
+ sys.path.append(tests_dir)
+
test_framework_tests = unittest.TestSuite()
for module in TEST_FRAMEWORK_MODULES:
test_framework_tests.addTest(unittest.TestLoader().loadTestsFromName("test_framework.{}".format(module)))
@@ -532,8 +547,6 @@ def run_tests(*, test_list, src_dir, build_dir, tmpdir, jobs=1, enable_coverage=
logging.debug("Early exiting after failure in TestFramework unit tests")
sys.exit(False)
- tests_dir = src_dir + '/test/functional/'
-
flags = ['--cachedir={}'.format(cache_dir)] + args
if enable_coverage: