t3905: remove nested git in command substitution

If a git command in a nested command substitution fails, it will be
silently ignored since only the return code of the outer command
substitutions is reported. Factor out nested command substitutions so
that the error codes of those commands are reported.

Signed-off-by: Denton Liu <liu.denton@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
This commit is contained in:
Denton Liu 2021-02-08 23:28:50 -08:00 committed by Junio C Hamano
parent bbaa45c3aa
commit 389ece4022

View File

@ -36,8 +36,10 @@ test_expect_success 'stash save --include-untracked cleaned the untracked files'
'
test_expect_success 'stash save --include-untracked stashed the untracked files' '
tracked=$(git rev-parse --short $(echo 1 | git hash-object --stdin)) &&
untracked=$(git rev-parse --short $(echo untracked | git hash-object --stdin)) &&
one_blob=$(echo 1 | git hash-object --stdin) &&
tracked=$(git rev-parse --short "$one_blob") &&
untracked_blob=$(echo untracked | git hash-object --stdin) &&
untracked=$(git rev-parse --short "$untracked_blob") &&
cat >expect.diff <<-EOF &&
diff --git a/HEAD b/HEAD
new file mode 100644
@ -117,7 +119,8 @@ test_expect_success 'stash save -u dirty index' '
'
test_expect_success 'stash save --include-untracked dirty index got stashed' '
blob=$(git rev-parse --short $(echo 4 | git hash-object --stdin)) &&
four_blob=$(echo 4 | git hash-object --stdin) &&
blob=$(git rev-parse --short "$four_blob") &&
cat >expect <<-EOF &&
diff --git a/file3 b/file3
new file mode 100644