]> git.ipfire.org Git - thirdparty/git.git/commitdiff
test-tool run-command testsuite: remove hardcoded filter
authorJosh Steadmon <steadmon@google.com>
Mon, 6 May 2024 19:57:33 +0000 (12:57 -0700)
committerJunio C Hamano <gitster@pobox.com>
Mon, 6 May 2024 21:06:34 +0000 (14:06 -0700)
`test-tool run-command testsuite` currently assumes that it will only be
running the shell test suite, and therefore filters out anything that
does not match a hardcoded pattern of "t[0-9][0-9][0-9][0-9]-*.sh".

Later in this series, we'll adapt `test-tool run-command testsuite` to
also support unit tests, which do not follow the same naming conventions
as the shell tests, so this hardcoded pattern is inconvenient.

Since `testsuite` also allows specifying patterns on the command-line,
let's just remove this pattern. As noted in [1], there are no longer any
uses of `testsuite` in our codebase, it should be OK to break backwards
compatibility in this case. We also add a new filter to avoid trying to
execute "." and "..", so that users who wish to execute every test in a
directory can do so without specifying a pattern.

[1] https://lore.kernel.org/git/850ea42c-f103-68d5-896b-9120e2628686@gmx.de/

Signed-off-by: Josh Steadmon <steadmon@google.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
t/helper/test-run-command.c

index a41a54d9cb7963cd4ee4ac8869056dc857d5fc8c..e6bd792274f4fb89e0a60e72623fd6e8f06f8925 100644 (file)
@@ -175,9 +175,7 @@ static int testsuite(int argc, const char **argv)
        while ((d = readdir(dir))) {
                const char *p = d->d_name;
 
-               if (*p != 't' || !isdigit(p[1]) || !isdigit(p[2]) ||
-                   !isdigit(p[3]) || !isdigit(p[4]) || p[5] != '-' ||
-                   !ends_with(p, ".sh"))
+               if (!strcmp(p, ".") || !strcmp(p, ".."))
                        continue;
 
                /* No pattern: match all */