generatetask/tests/test_generatetask.sh

61 lines
1.2 KiB
Bash

#!/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"
}
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" "$?"
}
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"
}