diff options
author | Joachim Breitner <mail@joachim-breitner.de> | 2017-09-10 15:49:43 +0100 |
---|---|---|
committer | Joachim Breitner <mail@joachim-breitner.de> | 2017-09-12 10:59:50 -0400 |
commit | fe35b85a8cc72582e0f98a3059be00a9a2318a4a (patch) | |
tree | 97f07df4e36800e9a8e294ee9f683f8dbf2be730 /testsuite/driver | |
parent | 838a10fcad9168895b49b4709056b549f2888860 (diff) | |
download | haskell-fe35b85a8cc72582e0f98a3059be00a9a2318a4a.tar.gz |
Add testcase for #14186
and move the generally useful helpers check_errmsg and grep_errmsg to
testlib.py. Some documentation can be found on
https://ghc.haskell.org/trac/ghc/wiki/Building/RunningTests/Adding
Diffstat (limited to 'testsuite/driver')
-rw-r--r-- | testsuite/driver/testlib.py | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/testsuite/driver/testlib.py b/testsuite/driver/testlib.py index 15c773e3f7..6a7506841a 100644 --- a/testsuite/driver/testlib.py +++ b/testsuite/driver/testlib.py @@ -520,6 +520,19 @@ def normalise_errmsg_fun( *fs ): def _normalise_errmsg_fun( name, opts, *fs ): opts.extra_errmsg_normaliser = join_normalisers(opts.extra_errmsg_normaliser, fs) +def check_errmsg(needle): + def norm(str): + if needle in str: + return "%s contained in -ddump-simpl\n" % needle + else: + return "%s not contained in -ddump-simpl\n" % needle + return normalise_errmsg_fun(norm) + +def grep_errmsg(needle): + def norm(str): + return "".join(filter(lambda l: re.search(needle, l), str.splitlines(True))) + return normalise_errmsg_fun(norm) + def normalise_whitespace_fun(f): return lambda name, opts: _normalise_whitespace_fun(name, opts, f) |