Merge #14316: tests: exclude all tests with difference parameters in `--exclude` list

c7b3e487f2 tests: exclude all tests with difference parameters (Chun Kuan Lee)

Pull request description:

  Fix broken exclusion list in functional tests. See https://github.com/bitcoin/bitcoin/pull/14007#pullrequestreview-158309105

Tree-SHA512: b6c2b86fef13e3c00c695adaeeb3e47ee9b48877c71bc605d24201ce931b2ef3ae9f5f199071fa1ec5de2d7aadc478410094c380cc297922e683e9b2569cda03
This commit is contained in:
MarcoFalke 2018-09-27 12:16:13 -04:00
commit 9b8bb5f140
No known key found for this signature in database
GPG Key ID: D2EA4850E7528B25
2 changed files with 7 additions and 5 deletions

View File

@ -55,5 +55,5 @@ test_script:
- ps: src\bench_bitcoin.exe -evals=1 -scaling=0 - ps: src\bench_bitcoin.exe -evals=1 -scaling=0
- ps: python test\util\bitcoin-util-test.py - ps: python test\util\bitcoin-util-test.py
- cmd: python test\util\rpcauth-test.py - cmd: python test\util\rpcauth-test.py
- cmd: python test\functional\test_runner.py --force --quiet --combinedlogslen=4000 --exclude "wallet_multiwallet,wallet_multiwallet.py --usecli" - cmd: python test\functional\test_runner.py --force --quiet --combinedlogslen=4000 --exclude wallet_multiwallet
deploy: off deploy: off

View File

@ -285,11 +285,13 @@ def main():
# Remove the test cases that the user has explicitly asked to exclude. # Remove the test cases that the user has explicitly asked to exclude.
if args.exclude: if args.exclude:
exclude_tests = [re.sub("\.py$", "", test) + (".py" if ".py" not in test else "") for test in args.exclude.split(',')] exclude_tests = [test.split('.py')[0] for test in args.exclude.split(',')]
for exclude_test in exclude_tests: for exclude_test in exclude_tests:
if exclude_test in test_list: # Remove <test_name>.py and <test_name>.py --arg from the test list
test_list.remove(exclude_test) exclude_list = [test for test in test_list if test.split('.py')[0] == exclude_test]
else: for exclude_item in exclude_list:
test_list.remove(exclude_item)
if not exclude_list:
print("{}WARNING!{} Test '{}' not found in current test list.".format(BOLD[1], BOLD[0], exclude_test)) print("{}WARNING!{} Test '{}' not found in current test list.".format(BOLD[1], BOLD[0], exclude_test))
if not test_list: if not test_list: