threads / patch / 54073

patchIssue #353: Skipping lazy prereq for skipped tests

Subject: [PATCH] Issue #353: Skipping lazy prereq for skipped tests

## tl;dr

2 messages between Aug 20, 2020 and Aug 20, 2020. Diffs are folded; open one to read it.

replies: 1people: 2as markdown or json

Gopal Yadav· Aug 20, 2020, 16:01 UTC · lore
 Skipping lazy prereq for test cases that are skipped via
 the --run option or via GIT_SKIP_TESTS. Issue 353:
 https://github.com/gitgitgadget/git/issues/353
Signed-off-by: Gopal Yadav <gopunop@gmail.com>
---
 t/test-lib-functions.sh | 12 ++++++------
 1 file changed, 6 insertions(+), 6 deletions(-)
Show changes to t/test-lib-functions.sh +6 −6
diff --git a/t/test-lib-functions.sh b/t/test-lib-functions.sh
index 6a8e194a99..bac86ffd9d 100644
--- a/t/test-lib-functions.sh
+++ b/t/test-lib-functions.sh
@@ -578,10 +578,10 @@ test_expect_failure () {
     test "$#" = 3 && { test_prereq=$1; shift; } || test_prereq=
     test "$#" = 2 ||
     BUG "not 2 or 3 parameters to test-expect-failure"
-    test_verify_prereq
-    export test_prereq
     if ! test_skip "$@"
     then
+        test_verify_prereq
+        export test_prereq
         say >&3 "checking known breakage of $TEST_NUMBER.$test_count '$1': $2"
         if test_run_ "$2" expecting_failure
         then
@@ -598,10 +598,10 @@ test_expect_success () {
     test "$#" = 3 && { test_prereq=$1; shift; } || test_prereq=
     test "$#" = 2 ||
     BUG "not 2 or 3 parameters to test-expect-success"
-    test_verify_prereq
-    export test_prereq
     if ! test_skip "$@"
     then
+        test_verify_prereq
+        export test_prereq
         say >&3 "expecting success of $TEST_NUMBER.$test_count '$1': $2"
         if test_run_ "$2"
         then
@@ -627,10 +627,10 @@ test_external () {
     BUG "not 3 or 4 parameters to test_external"
     descr="$1"
     shift
-    test_verify_prereq
-    export test_prereq
     if ! test_skip "$descr" "$@"
     then
+        test_verify_prereq
+        export test_prereq
         # Announce the script to reduce confusion about the
         # test output that follows.
         say_color "" "# run $test_count: $descr ($*)"
-- 
2.20.1
René Scharfe· Aug 20, 2020, 18:47 UTC · re: Gopal Yadav · lore

Re: [PATCH] Issue #353: Skipping lazy prereq for skipped tests

Am 20.08.20 um 18:01 schrieb Gopal Yadav:
Show 23 quoted lines
>  Skipping lazy prereq for test cases that are skipped via
>  the --run option or via GIT_SKIP_TESTS. Issue 353:
>  https://github.com/gitgitgadget/git/issues/353
>
> Signed-off-by: Gopal Yadav <gopunop@gmail.com>
> ---
>  t/test-lib-functions.sh | 12 ++++++------
>  1 file changed, 6 insertions(+), 6 deletions(-)
>
> diff --git a/t/test-lib-functions.sh b/t/test-lib-functions.sh
> index 6a8e194a99..bac86ffd9d 100644
> --- a/t/test-lib-functions.sh
> +++ b/t/test-lib-functions.sh
> @@ -578,10 +578,10 @@ test_expect_failure () {
>      test "$#" = 3 && { test_prereq=$1; shift; } || test_prereq=
>      test "$#" = 2 ||
>      BUG "not 2 or 3 parameters to test-expect-failure"
> -    test_verify_prereq
> -    export test_prereq
>      if ! test_skip "$@"
>      then
> +        test_verify_prereq
> +        export test_prereq

$test_prereq is used as a named parameter of the function test_skip, which uses it to determine if a test needs to be skipped due to missing prerequisites. Checking and exporting its input parameter only after it succeeded probably won't do any good.

Anyway, didn't e0316695ec3 (test-lib: don't check prereqs of test cases that won't be run anyway, 2019-11-12) already solve the issue?

René

← back to recent threads