diff --git a/generatetask b/generatetask index a12929c..b2bf187 100644 --- a/generatetask +++ b/generatetask @@ -10,3 +10,11 @@ taskl() { "$@" \ list } + +check_active_task() { + taskcount="$(taskl | wc -l)" + + if test "$taskcount" -eq 0; then + return 1 + fi +} diff --git a/tests/test_generatetask.sh b/tests/test_generatetask.sh index f2dfa23..7e73b77 100644 --- a/tests/test_generatetask.sh +++ b/tests/test_generatetask.sh @@ -21,3 +21,30 @@ test_taskl_runs_task_with_custom_parameters() { 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" "$?" +}