From 4d0912a206a32e9763424363617e8425f049f344 Mon Sep 17 00:00:00 2001 From: Junio C Hamano Date: Mon, 24 Apr 2017 23:39:47 -0700 Subject: [PATCH] test-lib.sh: do not barf under --debug at the end of the test The original did "does $remove_trash exist? Then go one level above and remove it". There was no problem under "--debug", where the variable is left empty, as the first "test -d $remove_trash" would have said "No, it doesn't". With the check implemented in the previous step, we'd always get an error under "--debug". Noticed-by: Jeff King Signed-off-by: Junio C Hamano --- t/test-lib.sh | 13 ++++++++----- 1 file changed, 8 insertions(+), 5 deletions(-) diff --git a/t/test-lib.sh b/t/test-lib.sh index cb0766b9e..d2f9ad5ae 100644 --- a/t/test-lib.sh +++ b/t/test-lib.sh @@ -760,13 +760,16 @@ test_done () { say "1..$test_count$skip_all" fi - test -d "$remove_trash" || - error "Tests passed but trash directory already removed before test cleanup; aborting" + if test -n "$remove_trash" + then + test -d "$remove_trash" || + error "Tests passed but trash directory already removed before test cleanup; aborting" - cd "$(dirname "$remove_trash")" && - rm -rf "$(basename "$remove_trash")" || - error "Tests passed but test cleanup failed; aborting" + cd "$(dirname "$remove_trash")" && + rm -rf "$(basename "$remove_trash")" || + error "Tests passed but test cleanup failed; aborting" + fi test_at_end_hook_ exit 0 ;; -- 2.11.0