From 79e1a3c9c6a4661562d419dc3427b35060ed0451 Mon Sep 17 00:00:00 2001 From: MarcoFalke <*~=`'#}+{/-|&$^_@721217.xyz> Date: Thu, 17 Jul 2025 13:00:05 +0200 Subject: [PATCH] test: Do not pass tests on unhandled exceptions This adds a missing catch for BaseException (e.g. SystemExit), which would otherwise be silently ignored. Also, remove the redundant other catches, which are just calling log.exception with a redundant log message. Github-Pull: #33001 Rebased-From: fa30b34026f76a5b8af997152fced2d281782e0d --- test/functional/test_framework/test_framework.py | 15 +++------------ 1 file changed, 3 insertions(+), 12 deletions(-) diff --git a/test/functional/test_framework/test_framework.py b/test/functional/test_framework/test_framework.py index d5b338f2ba2..1de527f7ba6 100755 --- a/test/functional/test_framework/test_framework.py +++ b/test/functional/test_framework/test_framework.py @@ -134,27 +134,18 @@ class BitcoinTestFramework(metaclass=BitcoinTestMetaClass): else: self.run_test() - except JSONRPCException: - self.log.exception("JSONRPC error") - self.success = TestStatus.FAILED except SkipTest as e: self.log.warning("Test Skipped: %s" % e.message) self.success = TestStatus.SKIPPED - except AssertionError: - self.log.exception("Assertion failed") - self.success = TestStatus.FAILED - except KeyError: - self.log.exception("Key error") - self.success = TestStatus.FAILED except subprocess.CalledProcessError as e: self.log.exception("Called Process failed with '{}'".format(e.output)) self.success = TestStatus.FAILED - except Exception: - self.log.exception("Unexpected exception caught during testing") - self.success = TestStatus.FAILED except KeyboardInterrupt: self.log.warning("Exiting after keyboard interrupt") self.success = TestStatus.FAILED + except BaseException: + self.log.exception("Unexpected exception") + self.success = TestStatus.FAILED finally: exit_code = self.shutdown() sys.exit(exit_code)