Running t6300 in an environment without gpg(1), we'll see those warnings: fatal: Not a valid object name refs/tags/signed-empty fatal: Not a valid object name refs/tags/signed-short fatal: Not a valid object name refs/tags/signed-long Because, those objects will be created only when GPG is satistified. This series try to clean those errors. Change in v3 from v2: * Fix grammar in 1/2 commit's message * Let tail open input file instead of using shell redirection. Change in v2 from v1: * Make 1/2 as near pure-code-move; and * Use 2/2 as a code change to preserve status code for cat-file * Mention reasons that 1/2 couldn't be pure-code-move. Đoàn Trần Công Danh (2): t6300: don't run cat-file on non-existent object t6300: check for cat-file exit status code t/t6300-for-each-ref.sh | 29 ++++++++++++++++++----------- 1 file changed, 18 insertions(+), 11 deletions(-) Range-diff against v2: 1: b813d6f2ad ! 1: b1b9771913 t6300: don't run cat-file on non-existent object @@ Commit message In t6300, some tests are guarded behind some prerequisites. Thus, objects created by those tests ain't available if those - prerequisites is unsatistified. Attempting to run "cat-file" + prerequisites are unsatistified. Attempting to run "cat-file" on those objects will run into failure. In fact, running t6300 in an environment without gpg(1), @@ Commit message * check their exit status code The expected value for objects with type: commit needs to be - computed outside the test because we can't relies on "$3" there. + computed outside the test because we can't rely on "$3" there. Furthermore, to prevent the accidental usage of that computed expected value, BUG out on unknown object's type. 2: 68ee769121 ! 2: 83d532528b t6300: check for cat-file exit status code @@ t/t6300-for-each-ref.sh: test_atom() { # We cannot use $3 as it expects sanitize_pgp to run - expect=$(git cat-file tag $ref | tail -n +6 | wc -c) ;; + git cat-file tag $ref >out && -+ expect=$(tail -n +6 <out | wc -c) && ++ expect=$(tail -n +6 out | wc -c) && + rm -f out ;; tree | blob) expect="" ;; -- 2.33.0.254.g68ee769121