aboutsummaryrefslogtreecommitdiff
path: root/tests/assert.sh
diff options
context:
space:
mode:
authorJan Sucan <jan@jansucan.com>2022-03-05 12:30:59 +0100
committerJan Sucan <jan@jansucan.com>2022-03-05 12:37:19 +0100
commit752230d7288cd8efd7606f7c4032077590fbac0f (patch)
tree118371aec0c2959645ef1d38a7a470d5c2a47e07 /tests/assert.sh
parent04533dd4293e6ddef4682129fda4154295bed96d (diff)
tests: Add option parsing tests
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
+}