generatetask/tests/test_generatetask.sh

80 lines
1.6 KiB
Bash
Raw Normal View History

2023-11-21 12:23:13 +00:00
#!/bin/bash
setup() {
source ../generatetask
}
test_taskl_runs_task_with_correct_parameters() {
fake task 'echo "task ${FAKE_PARAMS[@]}"'
expected="task rc.verbose:nothing rc.report.list.columns:id rc.report.list.labels:id list"
result="$(taskl)"
assert_equals "$expected" "$result"
}
test_taskl_runs_task_with_custom_parameters() {
fake task 'echo "task ${FAKE_PARAMS[@]}"'
expected="task rc.verbose:nothing rc.report.list.columns:id rc.report.list.labels:id +ACTIVE -BLOCKED list"
result="$(taskl +ACTIVE -BLOCKED)"
assert_equals "$expected" "$result"
}
2023-11-21 12:43:39 +00:00
test_check_active_task_returns_1_when_no_active_task() {
fake task 'printf ""'
expected=1
check_active_task
assert_equals "$expected" "$?"
}
test_check_active_task_returns_0_when_one_active_task() {
fake taskl 'printf "28\n"'
expected=0
check_active_task
assert_equals "$expected" "$?"
}
test_check_active_task_returns_0_when_multiple_active_tasks() {
fake taskl 'printf "28\n29\n30\n"'
expected=0
check_active_task
assert_equals "$expected" "$?"
}
2023-11-21 13:06:31 +00:00
test_pick_random_task_id_picks_random_id() {
fake taskl 'printf "28\n29\n30\n"'
fake shuf 'head -n 1'
expected="28"
result="$(pick_random_task_id)"
assert_equals "$expected" "$result"
}
2023-11-21 13:18:39 +00:00
test_generate_task_exits_1_if_task_active() {
fake check_active_task 'return 0'
generate_task
assert_equals "1" "$?"
}
test_generate_task_starts_random_task_if_no_task_active() {
fake check_active_task 'return 1'
fake pick_random_task_id 'printf 28'
fake task 'echo "task ${FAKE_PARAMS[@]}"'
expected="task rc.verbose:nothing 28 start"
result="$(generate_task)"
assert_equals "$expected" "$result"
}