load common T_YADM_BOOTSTRAP=; # populated by load_fixtures load_fixtures status=; # populated by bats run() setup() { destroy_tmp make_parents "$T_YADM_BOOTSTRAP" } teardown() { destroy_tmp } function available_test() { # shellcheck source=/dev/null YADM_TEST=1 source "$T_YADM" # shellcheck disable=SC2034 YADM_BOOTSTRAP="$T_YADM_BOOTSTRAP" status=0 { bootstrap_available; } || { status=$? true } echo -e "STATUS:$status" } @test "Bootstrap missing" { echo " When bootstrap command is missing return 1 " available_test [ "$status" == 1 ] } @test "Bootstrap not executable" { echo " When bootstrap command is not executable return 1 " touch "$T_YADM_BOOTSTRAP" available_test [ "$status" == 1 ] } @test "Bootstrap executable" { echo " When bootstrap command is not executable return 0 " touch "$T_YADM_BOOTSTRAP" chmod a+x "$T_YADM_BOOTSTRAP" available_test [ "$status" == 0 ] }