aboutsummaryrefslogtreecommitdiff
path: root/test
diff options
context:
space:
mode:
authorMarcoFalke <falke.marco@gmail.com>2019-02-14 15:49:13 -0500
committerMarcoFalke <falke.marco@gmail.com>2019-02-14 15:47:08 -0500
commitfa535af92c179b0ffb9280e0b2dc5acfeb80964a (patch)
treeca1a8bebe53395e6774e92d36a78c171c3897216 /test
parentfa7ca8ef58bf3e3b91d1f5a67fa42008e63b1f7b (diff)
downloadbitcoin-fa535af92c179b0ffb9280e0b2dc5acfeb80964a.tar.xz
fuzz: test_runner: Better error message when built with afl
Diffstat (limited to 'test')
-rwxr-xr-xtest/fuzz/test_runner.py27
1 files changed, 16 insertions, 11 deletions
diff --git a/test/fuzz/test_runner.py b/test/fuzz/test_runner.py
index eb4fe78cd4..1869f71753 100755
--- a/test/fuzz/test_runner.py
+++ b/test/fuzz/test_runner.py
@@ -72,17 +72,22 @@ def main():
logging.error("No fuzz targets selected")
logging.info("Fuzz targets selected: {}".format(test_list_selection))
- help_output = subprocess.run(
- args=[
- os.path.join(config["environment"]["BUILDDIR"], 'src', 'test', 'fuzz', test_list_selection[0]),
- '-help=1',
- ],
- check=True,
- stderr=subprocess.PIPE,
- universal_newlines=True,
- ).stderr
- if "libFuzzer" not in help_output:
- logging.error("Must be built with libFuzzer")
+ try:
+ help_output = subprocess.run(
+ args=[
+ os.path.join(config["environment"]["BUILDDIR"], 'src', 'test', 'fuzz', test_list_selection[0]),
+ '-help=1',
+ ],
+ timeout=1,
+ check=True,
+ stderr=subprocess.PIPE,
+ universal_newlines=True,
+ ).stderr
+ if "libFuzzer" not in help_output:
+ logging.error("Must be built with libFuzzer")
+ sys.exit(1)
+ except subprocess.TimeoutExpired:
+ logging.error("subprocess timed out: Currently only libFuzzer is supported")
sys.exit(1)
run_once(