diff mbox series

[v3,2/2] t6300: check for cat-file exit status code

Message ID 83d532528bce7cb475833a504a244aa945fe048d.1629509531.git.congdanhqx@gmail.com (mailing list archive)
State Accepted
Commit 1549577338c7c3a4455e9b3f05f9c8740b8e5337
Headers show
Series t6300: clear warning when running without gpg | expand

Commit Message

Đoàn Trần Công Danh Aug. 21, 2021, 1:36 a.m. UTC
In test_atom(), we're piping the output of cat-file to tail(1),
thus, losing its exit status.

Let's use a temporary file to preserve git exit status code.

Signed-off-by: Đoàn Trần Công Danh <congdanhqx@gmail.com>
---

 Junio wrote:

 > It is not wrong per-se, but do we need a redirect '<' here?  "tail"
 > takes filename(s) on the command line, but is there a reason to feed
 > the contents from the standard input?

 Well, no reason. In v1, I replaced the left hand side of pipe with <out,
 then in v2, I moved it to the end of command.

 Changed to not use shell redirection.

 t/t6300-for-each-ref.sh | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)
diff mbox series

Patch

diff --git a/t/t6300-for-each-ref.sh b/t/t6300-for-each-ref.sh
index 93126341b3..80679d5e12 100755
--- a/t/t6300-for-each-ref.sh
+++ b/t/t6300-for-each-ref.sh
@@ -66,7 +66,9 @@  test_atom() {
 			case $type in
 			tag)
 				# 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) &&
+				rm -f out ;;
 			tree | blob)
 				expect="" ;;
 			commit)