aboutsummaryrefslogtreecommitdiff
path: root/tests/assert.sh
diff options
context:
space:
mode:
Diffstat (limited to 'tests/assert.sh')
-rw-r--r--tests/assert.sh19
1 files changed, 19 insertions, 0 deletions
diff --git a/tests/assert.sh b/tests/assert.sh
new file mode 100644
index 0000000..ba73f41
--- /dev/null
+++ b/tests/assert.sh
@@ -0,0 +1,19 @@
+function assert_error()
+{
+ expected_stderr="$1"
+
+ shift 1
+ actual_stderr="$("$@" 2>&1 1>/dev/null)"
+ retval=$?
+ is_stderr_expected="$(echo "$actual_stderr" | grep -i "$expected_stderr")"
+
+ if [ $retval -eq 0 ]; then
+ echo "assert_error: Return value is $retval, expected != 0"
+ exit 1
+ elif [ -z "$is_stderr_expected" ]; then
+ echo "assert_error: stderr does not contain expected string"
+ echo " actual: $actual_stderr"
+ echo " expected: $expected_stderr"
+ exit 1
+ fi
+}