The exit code of the upstream in a pipe is ignored thus we should avoid
using it. By writing out the output of the git command to a file, we can
test the exit codes of both the commands.

Signed-off-by: Boxuan Li <libox...@connect.hku.hk>
---
 t/t4253-am-keep-cr-dos.sh | 6 ++++--
 1 file changed, 4 insertions(+), 2 deletions(-)

diff --git a/t/t4253-am-keep-cr-dos.sh b/t/t4253-am-keep-cr-dos.sh
index 553fe3e88e..5408c23dca 100755
--- a/t/t4253-am-keep-cr-dos.sh
+++ b/t/t4253-am-keep-cr-dos.sh
@@ -51,14 +51,16 @@ test_expect_success 'am with dos files without --keep-cr' '
 
 test_expect_success 'am with dos files with --keep-cr' '
        git checkout -b dosfiles-keep-cr initial &&
-       git format-patch -k --stdout initial..master | git am --keep-cr -k -3 &&
+       git format-patch -k --stdout initial..master > actual &&
+       git am --keep-cr -k -3 actual &&
        git diff --exit-code master
 '
 
 test_expect_success 'am with dos files config am.keepcr' '
        git config am.keepcr 1 &&
        git checkout -b dosfiles-conf-keepcr initial &&
-       git format-patch -k --stdout initial..master | git am -k -3 &&
+       git format-patch -k --stdout initial..master > actual &&
+       git am -k -3 actual &&
        git diff --exit-code master
 '
 
-- 
2.21.0.777.g83232e3864

Reply via email to