From b95b010c0de6d14537e852b742bde5dca5e946c7 Mon Sep 17 00:00:00 2001 From: David Jones Date: Mon, 17 Mar 2014 13:43:13 +0000 Subject: [PATCH 1/2] Set the exit status to reflect pass/fail. For Travis compatibility, we set the exit code to non-zero when any tests fail. Fixes #5. --- tests/urchin exit code/.test/This test passes | 0 tests/urchin exit code/non zero exit code when a test fails | 6 ++++++ tests/urchin exit code/zero exit code when tests all pass | 1 + urchin | 1 + 4 files changed, 8 insertions(+) create mode 100755 tests/urchin exit code/.test/This test passes create mode 100755 tests/urchin exit code/non zero exit code when a test fails create mode 100755 tests/urchin exit code/zero exit code when tests all pass diff --git a/tests/urchin exit code/.test/This test passes b/tests/urchin exit code/.test/This test passes new file mode 100755 index 0000000..e69de29 diff --git a/tests/urchin exit code/non zero exit code when a test fails b/tests/urchin exit code/non zero exit code when a test fails new file mode 100755 index 0000000..2e5e60c --- /dev/null +++ b/tests/urchin exit code/non zero exit code when a test fails @@ -0,0 +1,6 @@ +../../urchin "../Counts should be kept of successes and failures./.test" > /dev/null +case $? in + 0) exit 8;; + *) exit 0;; +esac + diff --git a/tests/urchin exit code/zero exit code when tests all pass b/tests/urchin exit code/zero exit code when tests all pass new file mode 100755 index 0000000..5e85ba0 --- /dev/null +++ b/tests/urchin exit code/zero exit code when tests all pass @@ -0,0 +1 @@ +../../urchin .test > /dev/null diff --git a/urchin b/urchin index 8ac2251..4be7c54 100755 --- a/urchin +++ b/urchin @@ -111,6 +111,7 @@ urchin_go() { set -- $(grep -e 'passed$' "$logfile"|wc -l) $(grep -e 'failed$' "$logfile"|wc -l) printf '%s\n' "$1 $(plural test "$1") passed." printf '%s\n' "$2 $(plural test "$2") failed." + return "$2" } urchin_molly_guard() { From 0587a615f3d5b9b486650e647d7e79ae74b89eff Mon Sep 17 00:00:00 2001 From: David Jones Date: Mon, 17 Mar 2014 14:00:30 +0000 Subject: [PATCH 2/2] Document the non zero exit code case. --- .../urchin exit code/non zero exit code when a test fails | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/tests/urchin exit code/non zero exit code when a test fails b/tests/urchin exit code/non zero exit code when a test fails index 2e5e60c..e34eeff 100755 --- a/tests/urchin exit code/non zero exit code when a test fails +++ b/tests/urchin exit code/non zero exit code when a test fails @@ -1,4 +1,11 @@ +#!/bin/sh + +# Borrow this test which has a failure in it (3 in fact), and +# run it using urchin: ../../urchin "../Counts should be kept of successes and failures./.test" > /dev/null + +# Now invert the result, we want _this_ test to fail if the exit +# code was 0. case $? in 0) exit 8;; *) exit 0;;