Hi Gábor, On Tue, 12 Nov 2019, SZEDER Gábor wrote: > With './t1234-foo.sh -r 5,6' we can run only specific test cases in a > test script, but our test framwork still evaluates all lazy prereqs > that the excluded test cases might depend on. This is unnecessary and > produces verbose and trace output that can be distracting. This has > been an issue ever since the '-r|--run=' options were introduced in > 0445e6f0a1 (test-lib: '--run' to run only specific tests, 2014-04-30), > because that commit added the check of the list of test cases > specified with '-r' after evaluating the prereqs. > > Avoid this unnecessary prereq evaluation by checking the list of test > cases specified with '-r' before looking at the prereqs. > > Note that GIT_SKIP_TESTS has always been checked before the prereqs, > so prereqs necessary for tests skipped that way were not evaluated. > > Signed-off-by: SZEDER Gábor > --- Thank you for this patch! Dscho > > Following up on: > > https://public-inbox.org/git/20190923165828.GA27068@szeder.dev/ > > t/test-lib.sh | 12 ++++++------ > 1 file changed, 6 insertions(+), 6 deletions(-) > > diff --git a/t/test-lib.sh b/t/test-lib.sh > index e06fa02a0e..24b541f494 100644 > --- a/t/test-lib.sh > +++ b/t/test-lib.sh > @@ -1000,6 +1000,12 @@ test_skip () { > to_skip=t > skipped_reason="GIT_SKIP_TESTS" > fi > + if test -z "$to_skip" && test -n "$run_list" && > + ! match_test_selector_list '--run' $test_count "$run_list" > + then > + to_skip=t > + skipped_reason="--run" > + fi > if test -z "$to_skip" && test -n "$test_prereq" && > ! test_have_prereq "$test_prereq" > then > @@ -1012,12 +1018,6 @@ test_skip () { > fi > skipped_reason="missing $missing_prereq${of_prereq}" > fi > - if test -z "$to_skip" && test -n "$run_list" && > - ! match_test_selector_list '--run' $test_count "$run_list" > - then > - to_skip=t > - skipped_reason="--run" > - fi > > case "$to_skip" in > t) > -- > 2.24.0.388.gde53c094ea > >