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..e34eeff --- /dev/null +++ b/tests/urchin exit code/non zero exit code when a test fails @@ -0,0 +1,13 @@ +#!/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;; +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() {