aboutsummaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
-rw-r--r--src/test/shell/unittest.bash16
1 files changed, 16 insertions, 0 deletions
diff --git a/src/test/shell/unittest.bash b/src/test/shell/unittest.bash
index acdf06bb77..d00a9a4cb2 100644
--- a/src/test/shell/unittest.bash
+++ b/src/test/shell/unittest.bash
@@ -351,6 +351,22 @@ function expect_cmd_with_timeout() {
return 1
}
+# Usage: assert_one_of <expected_list>... <actual>
+# Asserts that actual is one of the items in expected_list
+# Example: assert_equals ( "foo", "bar", "baz" ) actualval
+function assert_one_of() {
+ local args=("$@")
+ local last_arg_index=$((${#args[@]} - 1))
+ local actual=${args[last_arg_index]}
+ unset args[last_arg_index]
+ for expected_item in "${args[@]}"; do
+ [ "$expected_item" = "$actual" ] && return 0
+ done;
+
+ fail "Expected one of '$expected_list', was '$actual'"
+ return 1
+}
+
# Usage: assert_equals <expected> <actual>
# Asserts [ expected = actual ].
function assert_equals() {