diff options
author | Thomas Miedema <thomasmiedema@gmail.com> | 2015-10-28 12:28:59 +0100 |
---|---|---|
committer | Thomas Miedema <thomasmiedema@gmail.com> | 2015-10-29 09:23:10 +0100 |
commit | 032be43b66db29ca6893bd4219c0d6036201a94e (patch) | |
tree | 21ac0e13f7a8fd6a647b8ec3f8fe2eb7757e4291 /testsuite/driver/runtests.py | |
parent | 08f5c4e3590609c1a9603bd78b089dbb28cff9f8 (diff) | |
download | haskell-032be43b66db29ca6893bd4219c0d6036201a94e.tar.gz |
Testsuite: report and error out on unfound tests
Users are sometimes confused why their test doesn't run. It is usually
because of a misspelled testname, for example using 'TEST=1234' instead
of 'TEST=T1234'. After this patch it is hopefully more clear what the
problem is, showing:
ERROR: tests not found: ['1234']
Instead of:
0 total tests, which gave rise to
0 test cases, of which
0 were skipped
Reviewed by: austin, bgamari
Differential Revision: https://phabricator.haskell.org/D1388
Diffstat (limited to 'testsuite/driver/runtests.py')
-rw-r--r-- | testsuite/driver/runtests.py | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/testsuite/driver/runtests.py b/testsuite/driver/runtests.py index 491335d29a..0f751f2151 100644 --- a/testsuite/driver/runtests.py +++ b/testsuite/driver/runtests.py @@ -79,7 +79,8 @@ for opt,arg in opts: config.no_print_summary = True if opt == '--only': - config.only.append(arg) + config.run_only_some_tests = True + config.only.add(arg) if opt == '--way': if (arg not in config.run_ways and arg not in config.compile_ways and arg not in config.other_ways): @@ -287,6 +288,11 @@ for file in t_files: t.n_framework_failures = t.n_framework_failures + 1 traceback.print_exc() +if config.only: + # See Note [Mutating config.only] + sys.stderr.write("ERROR: tests not found: {0}\n".format(list(config.only))) + sys.exit(1) + if config.list_broken: global brokens print('') |