Test:
@simple_test
class my_test(RunOnlyRegressionTest):
x = variable(int, value=10)
executable = 'echo'
sanity_patterns = sn.assert_true(1)
@run_after('init')
def check_x(self):
'''Test will not be listed or run if filtered here'''
self.skip_if(self.x < 3, 'x is lower than 3')
@run_before('run')
def check_x2(self):
'''Test will be skipped during runtime'''
self.skip_if(self.x < 5, 'x is lower than 5')
Run:
reframe -c test.py -S valid_systems='*' -S valid_prog_environs='*' -n my_test -S x=4 -r
Output:
[----------] start processing checks
[ RUN ] my_test @generic:default+builtin
[----------] all spawned checks have finished
[ PASSED ] Ran 0/1 test case(s) from 1 check(s) (0 failure(s), 1 skipped)
The test is reported as skipped, but we should print a SKIP message as well.