diff options
author | Ben Gamari <ben@smart-cactus.org> | 2019-02-26 10:13:44 -0500 |
---|---|---|
committer | Marge Bot <ben+marge-bot@smart-cactus.org> | 2019-03-06 21:48:10 -0500 |
commit | 4ca271d1880a6f4c5f49869de7f1920a2073adb6 (patch) | |
tree | c78b13bdd5e1038205e9a07670aca7a42870146f | |
parent | 3caeb443b2bc2c2ef6f43ce59abfc1cfe3ba579f (diff) | |
download | haskell-4ca271d1880a6f4c5f49869de7f1920a2073adb6.tar.gz |
testsuite: Introduce fragile modifier
Now since we have been a bit more stringent in testsuite cleanliness we
have been marking a lot of tests as fragile using the `skip` modifier.
However, this unfortunately means that we lose the association with the
ticket number documenting the fragility.
Here we introduce `fragile` and `fragile_for` to retain this
information.
-rw-r--r-- | testsuite/driver/testlib.py | 24 |
1 files changed, 24 insertions, 0 deletions
diff --git a/testsuite/driver/testlib.py b/testsuite/driver/testlib.py index edd43fba9d..309a910dcf 100644 --- a/testsuite/driver/testlib.py +++ b/testsuite/driver/testlib.py @@ -247,6 +247,30 @@ def _expect_pass(way): # ----- +def fragile( bug ): + """ + Indicates that the test should be skipped due to fragility documented in + the given ticket. + """ + def helper( name, opts, bug=bug ): + record_broken(name, opts, bug) + opts.skip = True + + return helper + +def fragile_for( name, opts, bug, ways ): + """ + Indicates that the test should be skipped due to fragility in the given + test ways as documented in the given ticket. + """ + def helper( name, opts, bug=bug, ways=ways ): + record_broken(name, opts, bug) + opts.omit_ways = ways + + return helper + +# ----- + def omit_ways( ways ): return lambda name, opts, w=ways: _omit_ways( name, opts, w ) |