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