diff options
author | Peter Eisentraut | 2023-11-16 07:06:12 +0000 |
---|---|---|
committer | Peter Eisentraut | 2023-11-16 07:14:33 +0000 |
commit | bc15a126bbab99aa12fe7138131c12d3674e2c94 (patch) | |
tree | 93df2e340a5794b83d2882470cbe7f69b1c7dcbc | |
parent | 2e8a0edc2a3321582d5da65690b0371654c7a44f (diff) |
Explicitly skip TAP tests under Meson if disabled
If the tap_tests option is disabled under Meson, the TAP tests are
currently not registered at all. But this makes it harder to see what
is going on, why suddently there are fewer tests than before.
Instead, run testwrap with an option that marks the test as skipped.
That way, the total list and count of tests is constant whether the
option is enabled or not.
Reviewed-by: Andres Freund <[email protected]>
Discussion: https://www.postgresql.org/message-id/[email protected]
-rw-r--r-- | meson.build | 5 | ||||
-rwxr-xr-x | src/tools/testwrap | 5 |
2 files changed, 8 insertions, 2 deletions
diff --git a/meson.build b/meson.build index 47c8fcdc53..286d7e4269 100644 --- a/meson.build +++ b/meson.build @@ -3252,8 +3252,9 @@ foreach test_dir : tests testport += 1 elif kind == 'tap' + testwrap_tap = testwrap_base if not tap_tests_enabled - continue + testwrap_tap += ['--skip', 'TAP tests not enabled'] endif test_command = [ @@ -3293,7 +3294,7 @@ foreach test_dir : tests test(test_dir['name'] / onetap_p, python, kwargs: test_kwargs, - args: testwrap_base + [ + args: testwrap_tap + [ '--testgroup', test_dir['name'], '--testname', onetap_p, '--', test_command, diff --git a/src/tools/testwrap b/src/tools/testwrap index 7a64fe76a2..d01e61051c 100755 --- a/src/tools/testwrap +++ b/src/tools/testwrap @@ -12,6 +12,7 @@ parser.add_argument('--srcdir', help='source directory of test', type=str) parser.add_argument('--basedir', help='base directory of test', type=str) parser.add_argument('--testgroup', help='test group', type=str) parser.add_argument('--testname', help='test name', type=str) +parser.add_argument('--skip', help='skip test (with reason)', type=str) parser.add_argument('test_command', nargs='*') args = parser.parse_args() @@ -23,6 +24,10 @@ print('# executing test in {} group {} test {}'.format( testdir, args.testgroup, args.testname)) sys.stdout.flush() +if args.skip is not None: + print('1..0 # Skipped: ' + args.skip) + sys.exit(0) + if os.path.exists(testdir) and os.path.isdir(testdir): shutil.rmtree(testdir) os.makedirs(testdir) |