]> git.ipfire.org Git - thirdparty/git.git/commitdiff
tests: increase the verbosity of the GPG-related prereqs
authorJohannes Schindelin <johannes.schindelin@gmx.de>
Thu, 26 Mar 2020 15:35:28 +0000 (15:35 +0000)
committerJunio C Hamano <gitster@pobox.com>
Thu, 26 Mar 2020 20:36:54 +0000 (13:36 -0700)
Especially when debugging a test failure that can only be reproduced in
the CI build (e.g. when the developer has no access to a macOS machine
other than running the tests on a macOS build agent), output should not
be suppressed.

In the instance of `hi/gpg-prefer-check-signature`, where one
GPG-related test failed for no apparent reason, the entire output of
`gpg` and `gpgsm` was suppressed, even in verbose mode, leaving
interested readers no clue what was going wrong.

Let's fix this by no longer redirecting the output not to `/dev/null`.
This is now possible because the affected prereqs were turned into lazy
ones (and are therefore evaluated via `test_eval_` which respects the
`--verbose` option).

Note that we _still_ redirect `stdout` to `/dev/null` for those commands
that sign their `stdin`, as the output would be binary (and useless
anyway, because the reader would not have anything against which to
compare the output).

Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
t/lib-gpg.sh

index 7a78c562e8d9355b4c8e9863c0027f6c1129754a..9fc5241228e800bd237d48018989c6aed3ef942b 100755 (executable)
@@ -40,12 +40,12 @@ test_lazy_prereq GPG '
                #               > lib-gpg/ownertrust
                mkdir "$GNUPGHOME" &&
                chmod 0700 "$GNUPGHOME" &&
-               (gpgconf --kill gpg-agent >/dev/null 2>&1 || : ) &&
-               gpg --homedir "${GNUPGHOME}" 2>/dev/null --import \
+               (gpgconf --kill gpg-agent || : ) &&
+               gpg --homedir "${GNUPGHOME}" --import \
                        "$TEST_DIRECTORY"/lib-gpg/keyring.gpg &&
-               gpg --homedir "${GNUPGHOME}" 2>/dev/null --import-ownertrust \
+               gpg --homedir "${GNUPGHOME}" --import-ownertrust \
                        "$TEST_DIRECTORY"/lib-gpg/ownertrust &&
-               gpg --homedir "${GNUPGHOME}" </dev/null >/dev/null 2>&1 \
+               gpg --homedir "${GNUPGHOME}" </dev/null >/dev/null \
                        --sign -u committer@example.com
                ;;
        esac
@@ -68,23 +68,23 @@ test_lazy_prereq GPGSM '
        #       gpgsm --homedir /tmp/gpghome/ \
        #               -o t/lib-gpg/gpgsm_cert.p12 \
        #               --export-secret-key-p12 "committer@example.com"
-       echo | gpgsm --homedir "${GNUPGHOME}" 2>/dev/null \
-              --passphrase-fd 0 --pinentry-mode loopback \
-              --import "$TEST_DIRECTORY"/lib-gpg/gpgsm_cert.p12 &&
+       echo | gpgsm --homedir "${GNUPGHOME}" \
+               --passphrase-fd 0 --pinentry-mode loopback \
+               --import "$TEST_DIRECTORY"/lib-gpg/gpgsm_cert.p12 &&
 
-       gpgsm --homedir "${GNUPGHOME}" 2>/dev/null -K |
-       grep fingerprint: |
-       cut -d" " -f4 |
+       gpgsm --homedir "${GNUPGHOME}" -K |
+       grep fingerprint: |
+       cut -d" " -f4 |
        tr -d "\\n" >"${GNUPGHOME}/trustlist.txt" &&
 
-       echo " S relax" >>"${GNUPGHOME}/trustlist.txt" &&
-       echo hello | gpgsm --homedir "${GNUPGHOME}" >/dev/null \
-              -u committer@example.com -o /dev/null --sign - 2>&1
+       echo " S relax" >>"${GNUPGHOME}/trustlist.txt" &&
+       echo hello | gpgsm --homedir "${GNUPGHOME}" >/dev/null \
+              -u committer@example.com -o /dev/null --sign -
 '
 
 test_lazy_prereq RFC1991 '
        test_have_prereq GPG &&
-       echo | gpg --homedir "${GNUPGHOME}" -b --rfc1991 >/dev/null 2>&1
+       echo | gpg --homedir "${GNUPGHOME}" -b --rfc1991 >/dev/null
 '
 
 sanitize_pgp() {