diff options
author | Junio C Hamano <gitster@pobox.com> | 2021-09-08 23:30:31 +0300 |
---|---|---|
committer | Junio C Hamano <gitster@pobox.com> | 2021-09-08 23:30:31 +0300 |
commit | 85246a7054a6d20a1dc7ccc31e382493332374a4 (patch) | |
tree | 29820e2f1ee4af275563593b1f321fda408f22cd /t | |
parent | efae5c2e22d55b2ff9e8edb2b720c2731cebdac1 (diff) | |
parent | 1549577338c7c3a4455e9b3f05f9c8740b8e5337 (diff) |
Merge branch 'dd/t6300-wo-gpg-fix'
Test fix.
* dd/t6300-wo-gpg-fix:
t6300: check for cat-file exit status code
t6300: don't run cat-file on non-existent object
Diffstat (limited to 't')
-rwxr-xr-x | t/t6300-for-each-ref.sh | 29 |
1 files changed, 18 insertions, 11 deletions
diff --git a/t/t6300-for-each-ref.sh b/t/t6300-for-each-ref.sh index 0d2e062f79..80679d5e12 100755 --- a/t/t6300-for-each-ref.sh +++ b/t/t6300-for-each-ref.sh @@ -59,18 +59,25 @@ test_atom() { # Automatically test "contents:size" atom after testing "contents" if test "$2" = "contents" then - case $(git cat-file -t "$ref") in - tag) - # We cannot use $3 as it expects sanitize_pgp to run - expect=$(git cat-file tag $ref | tail -n +6 | wc -c) ;; - tree | blob) - expect='' ;; - commit) - expect=$(printf '%s' "$3" | wc -c) ;; - esac - # Leave $expect unquoted to lose possible leading whitespaces - echo $expect >expected + # for commit leg, $3 is changed there + expect=$(printf '%s' "$3" | wc -c) test_expect_${4:-success} $PREREQ "basic atom: $1 contents:size" ' + type=$(git cat-file -t "$ref") && + case $type in + tag) + # We cannot use $3 as it expects sanitize_pgp to run + git cat-file tag $ref >out && + expect=$(tail -n +6 out | wc -c) && + rm -f out ;; + tree | blob) + expect="" ;; + commit) + : "use the calculated expect" ;; + *) + BUG "unknown object type" ;; + esac && + # Leave $expect unquoted to lose possible leading whitespaces + echo $expect >expected && git for-each-ref --format="%(contents:size)" "$ref" >actual && test_cmp expected actual ' |