Hi, On 2022-02-24 11:16:03 +0100, Peter Eisentraut wrote: > Now that we have switched everything to done_testing(), the subtests feature > isn't that relevant anymore, but it might still be useful to get better > output when running with PROVE_FLAGS=--verbose.
I've incidentally played with subtests yesterdays, when porting src/interfaces/libpq/test/regress.pl to a tap test. Unfortunately it seems that subtests aren't actually specified in the tap format, and that different libraries generate different output formats. The reason this matters somewhat is that meson's testrunner can parse tap and give nicer progress / error reports. But since subtests aren't in the spec it can't currently parse them... Open issue since 2015: https://github.com/TestAnything/Specification/issues/2 The perl ecosystem is so moribund :(. > t/001_basic.pl .. > # Subtest: vacuumlo --help > ok 1 - exit code 0 > ok 2 - goes to stdout > ok 3 - nothing to stderr > 1..3 It's clearly better. We can approximate some of it by using is_deeply() and comparing exit, stdout, stderr at once. Particularly for helpers like program_help() that are used in a lot of places. Greetings, Andres Freund