Re: [PATCH v5 36/39] t: make SHA1 prerequisite depend on default hash
From: Eric Sunshine <hidden>
Date: 2020-07-29 03:01:44
On Tue, Jul 28, 2020 at 7:36 PM brian m. carlson [off-list ref] wrote:
quoted hunk ↗ jump to hunk
Currently, the SHA1 prerequisite depends on the output of git hash-object. However, in order for that to produce sane behavior, we must be in a repository. If we are not, the default will remain SHA-1, and we'll produce wrong results if we're using SHA-256 for the testsuite but the test assertion starts when we're not in a repository. Check the environment variable we use for this purpose, leaving it to default to SHA-1 if none is specified. Signed-off-by: brian m. carlson <redacted> ---diff --git a/t/test-lib.sh b/t/test-lib.sh@@ -1689,7 +1689,11 @@ test_lazy_prereq CURL ' test_lazy_prereq SHA1 ' - test $(git hash-object /dev/null) = e69de29bb2d1d6434b8b29ae775ad8c2e48c5391 + case "$GIT_DEFAULT_HASH" in + sha1) true ;; + "") test $(git hash-object /dev/null) = e69de29bb2d1d6434b8b29ae775ad8c2e48c5391 ;; + *) false :: + esac '
This deserves a s/::/;;/ in the final case arm. The "::" does work --
in a manner of speaking -- but only "by accident"; merely because it's
being interpreted as an argument to 'false' and it happens to be the
final case arm, but it still ought to be fixed.
(I'm pretty sure I typed ";;", not "::", when I gave this code as an
example in my previous review... {goes and checks...} indeed, I did
type ";;".)