63 lines
1.2 KiB
Bash
63 lines
1.2 KiB
Bash
#!/bin/bash
|
|
|
|
setup() {
|
|
source ../zk
|
|
}
|
|
|
|
test_get_command_returns_empty_if_no_input_given() {
|
|
result="$(get_command "$ZKCOMMANDS" "")"
|
|
|
|
assert_equals "" "$result"
|
|
}
|
|
|
|
test_get_command_returns_empty_if_unrecognized_input_given() {
|
|
result="$(get_command "$ZKCOMMANDS" "lkjdsaas")"
|
|
|
|
assert_equals "" "$result"
|
|
}
|
|
|
|
test_get_command_returns_list_for_substring() {
|
|
expected="list"
|
|
|
|
for arg in l li lis list; do
|
|
result="$(get_command "$ZKCOMMANDS" "$arg")"
|
|
assert_equals "$expected" "$result"
|
|
done
|
|
}
|
|
|
|
test_get_command_returns_search_for_substring() {
|
|
expected="search"
|
|
|
|
for arg in s se sea sear searc search; do
|
|
result="$(get_command "$ZKCOMMANDS" "$arg")"
|
|
assert_equals "$expected" "$result"
|
|
done
|
|
}
|
|
|
|
test_get_command_returns_new_for_substring() {
|
|
expected="new"
|
|
|
|
for arg in n ne new; do
|
|
result="$(get_command "$ZKCOMMANDS" "$arg")"
|
|
assert_equals "$expected" "$result"
|
|
done
|
|
}
|
|
|
|
test_get_command_returns_edit_for_substring() {
|
|
expected="edit"
|
|
|
|
for arg in e ed edi edit; do
|
|
result="$(get_command "$ZKCOMMANDS" "$arg")"
|
|
assert_equals "$expected" "$result"
|
|
done
|
|
}
|
|
|
|
test_get_command_does_not_return_match_unless_at_start_of_command_string() {
|
|
commands="delete"
|
|
expected=""
|
|
|
|
result="$(get_command "$commands" "l")"
|
|
|
|
assert_equals "$expected" "$result"
|
|
}
|