#!/bin/bash setup() { source ../zk } test_main_calls_list_when_list_command_passed() { fake check_zkdir test expected="_zk_list" fake get_command 'echo list' fake _zk_list "echo $expected" result="$(main)" assert_equals "$expected" "$result" } test_main_calls_search_when_search_command_passed() { fake check_zkdir test expected="_zk_search" fake get_command 'echo search' fake _zk_search "echo $expected" result="$(main)" assert_equals "$expected" "$result" } test_main_calls_new_when_new_command_passed() { fake check_zkdir test expected="_zk_new" fake get_command 'echo new' fake _zk_new "echo $expected" result="$(main)" assert_equals "$expected" "$result" } test_main_calls_edit_when_edit_command_passed() { fake check_zkdir test expected="_zk_edit" fake get_command 'echo edit' fake _zk_edit "echo $expected" result="$(main)" assert_equals "$expected" "$result" } test_main_calls_rm_when_rm_command_passed() { fake check_zkdir test expected="_zk_rm" fake get_command 'echo rm' fake _zk_rm "echo $expected" result="$(main)" assert_equals "$expected" "$result" } test_main_errors_if_unrecognized_command_given() { fake check_zkdir test fake get_command echo "" assert_status_code 2 main }