Thread (15 messages) flat view 15 messages, 5 authors, 2016-06-15

Re: [PATCH 1/2] tests: make test_must_fail more verbose

From: Jon Seymour <hidden>
Date: 2016-06-15 22:49:27

On Wed, Sep 1, 2010 at 1:56 AM, Jeff King [off-list ref] wrote:
Because test_must_fail fails when a command succeeds, the
command frequently does not produce any output (since, after
all, it thought it was succeeding). So let's have
test_must_fail itself report that a problem occurred.

Signed-off-by: Jeff King <redacted>
Jeff,

Nice fix - thank you!

It is nice to see that my initial sloppiness inspired a thoughtful
remediation. I'll try not to rely of gitters being always so helpful
:-)

jon.
quoted hunk ↗ jump to hunk
---
 t/test-lib.sh |   10 +++++++++-
 1 files changed, 9 insertions(+), 1 deletions(-)
diff --git a/t/test-lib.sh b/t/test-lib.sh
index 3a3d4c4..285bfd8 100644
--- a/t/test-lib.sh
+++ b/t/test-lib.sh
@@ -591,7 +591,15 @@ test_path_is_missing () {
 test_must_fail () {
       "$@"
-       test $? -gt 0 -a $? -le 129 -o $? -gt 192
+       exit_code=$?
+       if test $exit_code = 0; then
+               echo >&2 "test_must_fail: command succeeded: $*"
+               return 1
+       elif test $exit_code -gt 129 -a $exit_code -le 192; then
+               echo >&2 "test_must_fail: died by signal: $*"
+               return 1
+       fi
+       return 0
 }

 # Similar to test_must_fail, but tolerates success, too.  This is
--
1.7.2.2.119.gf9c33
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help