test(fadd): mock success, more test coverage

pull/13/head
kevin zhuang 4 years ago
parent 5885b21f79
commit bf2e5ac3ef

@ -60,7 +60,7 @@ while [ "$#" -gt 0 ]; do
exit 0
;;
*)
echo "Invalid option: $1" 1>&2
echo "Invalid option: $1" >&2
usage
exit 1
;;

@ -13,6 +13,21 @@ no_file_selected() {
bash "${BATS_TEST_DIRNAME}"/../dotbare fadd -d
}
stage_selected_file() {
export PATH="${BATS_TEST_DIRNAME}:$PATH"
bash "${BATS_TEST_DIRNAME}"/../dotbare fadd -f
}
stage_selected_dir() {
export PATH="${BATS_TEST_DIRNAME}:$PATH"
bash "${BATS_TEST_DIRNAME}"/../dotbare fadd --dir
}
stage_modified_file() {
export PATH="${BATS_TEST_DIRNAME}:$PATH"
bash "${BATS_TEST_DIRNAME}"/../dotbare fadd --dir
}
@test "fadd help" {
run help
[ "${status}" -eq 0 ]
@ -22,10 +37,24 @@ no_file_selected() {
@test "fadd invalid option" {
run invalid_option
[ "${status}" -eq 1 ]
[ "${lines[0]}" = "Invalid option: p" ]
[ "${lines[0]}" = "Invalid option: -p" ]
}
@test "fadd no file selected" {
run no_file_selected
[ "${status}" -eq 1 ]
}
@test "fadd stage selected file" {
run stage_selected_file
[ "${status}" -eq 129 ]
result=$(echo "${lines[0]}" | tr '`' "'")
[ "${result}" = "error: unknown option 'multi --preview head -200 {}'" ]
}
@test "fadd stage selected dir" {
run stage_selected_dir
[ "${status}" -eq 129 ]
result=$(echo "${lines[0]}" | tr '`' "'")
[ "${result}" = "error: unknown option 'multi --preview tree -L 1 -C --dirsfirst {}'" ]
}

@ -0,0 +1,9 @@
#!/usr/bin/env bash
#
# This script is for mocking fzf for testing,
# it will stop fzf for goin into a interactive mode
#
# usage:
# export PATH="${BATS_TEST_DIRNAME}:$PATH"
echo "$@"
Loading…
Cancel
Save