Meta/Dothem: allow different kinds of tests run at the same time
Junio C Hamano committed
Mar 4, 2026 at 14:52 UTC
5e058d042ba1c7206726b66f98faac5b8156a8dd
1 file changed
+22
-13
Dothem
+22
-13
@@ -90,6 +90,9 @@ export GIT_TEST_CHAIN_LINT
90
GIT_PROVE_OPTS="${GIT_PROVE_OPTS:+$GIT_PROVE_OPTS }--state=slow,save"
91
export GIT_PROVE_OPTS
92
93
+TEST_CONTRIB_TOO=YesPlease
94
+export TEST_CONTRIB_TOO
95
+
96
test -f /bin/dash || with_dash=
97
if test -z "$BUILDBASE"
98
then
@@ -279,32 +282,38 @@ do
282
if test -n "$san"
283
then
284
section SANITIZE=address,undefined
282
- SANITIZE=address,undefined Meta/Make $M $jobs test &&
285
+ SANITIZE=address,undefined Meta/Make $M $jobs $T test &&
286
+ rm -f compat/mmap.o &&
287
Meta/Make >/dev/null distclean
284
- elif test "$breaking$with_leaks$with_sha256$dotest" = test
285
- then
286
- section test
287
- Meta/Make $M $noprove ${test+"$test"} $jobs $test_long \
288
- $memtrash \
289
- -- ${with_dash:+SHELL_PATH=/bin/dash} "$@" $dotest
290
- elif test -n "$with_leaks"
288
+ fi &&
289
+ if test -n "$with_leaks"
290
then
291
section leaks
292
SANITIZE=leak \
293
GIT_TEST_PASSING_SANITIZE_LEAK=true \
295
- Meta/Make -j16 $T CC=clang test &&
294
+ Meta/Make $jobs $T CC=clang test &&
295
Meta/Make >/dev/null distclean
297
- elif test -n "$with_sha256"
296
+ fi &&
297
+ if test -n "$with_sha256"
298
then
299
section sha256
300
- GIT_TEST_DEFAULT_HASH=sha256 Meta/Make -j16 $T test
301
- elif test -n "$breaking"
300
+ GIT_TEST_DEFAULT_HASH=sha256 Meta/Make $jobs $T test
301
+ fi &&
302
+ if test -n "$breaking"
303
then
304
section breaking
304
- Meta/Make -j16 WITH_BREAKING_CHANGES=YesPlease test &&
305
+ Meta/Make $jobs WITH_BREAKING_CHANGES=YesPlease $T test &&
306
Meta/Make >/dev/null distclean
307
fi &&
308
309
+ if test "$san$breaking$with_leaks$breaking$with_sha256$dotest" = test
310
+ then
311
+ section test
312
+ Meta/Make $M $noprove ${test+"$test"} $jobs $test_long \
313
+ $memtrash \
314
+ -- ${with_dash:+SHELL_PATH=/bin/dash} "$@" $T $dotest
315
+ fi &&
316
+
317
# docs
318
{
319
test -n "$skip_doc" ||