|
|
|
@ -42,27 +42,40 @@ checkout_selected_file() {
|
|
|
|
|
|
|
|
|
|
@test "fchekcout branch" {
|
|
|
|
|
run checkout_branch
|
|
|
|
|
result=$(echo "${lines[0]}" | tr '`' "'")
|
|
|
|
|
echo "${status}" >&3
|
|
|
|
|
echo "${output}" >&3
|
|
|
|
|
result=$(echo "${output}" | tr '`' "'")
|
|
|
|
|
[ "${status}" -eq 129 ]
|
|
|
|
|
[ "${result}" = "error: unknown option 'branch'" ]
|
|
|
|
|
[[ "${result}" =~ "error: unknown option 'branch'" ]]
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
@test "fchekcout commit" {
|
|
|
|
|
run checkout_commit
|
|
|
|
|
result=$(echo "${lines[0]}" | tr '`' "'")
|
|
|
|
|
if ! "${BATS_TEST_DIRNAME}"/../dotbare log &>/dev/null; then
|
|
|
|
|
[[ "${lines[0]}" =~ "fatal: your current branch 'master' does not have any commits yet" ]]
|
|
|
|
|
result=$(echo "${lines[1]}" | tr '`' "'")
|
|
|
|
|
else
|
|
|
|
|
result=$(echo "${lines[0]}" | tr '`' "'")
|
|
|
|
|
fi
|
|
|
|
|
[ "${status}" -eq 129 ]
|
|
|
|
|
[ "${result}" = "error: unknown option 'commitshow'" ]
|
|
|
|
|
[[ "${result}" =~ "error: unknown option 'commitshow'" ]]
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
@test "fcheckout modified" {
|
|
|
|
|
run checkout_modified_file
|
|
|
|
|
[ "${status}" -eq 1 ]
|
|
|
|
|
[ "${lines[0]}" = "error: pathspec '$HOME/modifiedfile' did not match any file(s) known to git" ]
|
|
|
|
|
[[ "${lines[0]}" =~ "error: pathspec '$HOME/modifiedfile' did not match any file(s) known to git" ]]
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
@test "fcheckout select" {
|
|
|
|
|
run checkout_selected_file
|
|
|
|
|
if ! "${BATS_TEST_DIRNAME}"/../dotbare log &>/dev/null; then
|
|
|
|
|
[[ "${lines[0]}" =~ "fatal: your current branch 'master' does not have any commits yet" ]]
|
|
|
|
|
[[ "${lines[1]}" =~ "error: pathspec 'commitdiff' did not match any file(s) known to git" ]]
|
|
|
|
|
[[ "${lines[2]}" =~ "error: pathspec '$HOME/selectgitfile' did not match any file(s) known to git" ]]
|
|
|
|
|
else
|
|
|
|
|
[[ "${lines[0]}" =~ "error: pathspec 'commitdiff' did not match any file(s) known to git" ]]
|
|
|
|
|
[[ "${lines[1]}" =~ "error: pathspec '$HOME/selectgitfile' did not match any file(s) known to git" ]]
|
|
|
|
|
fi
|
|
|
|
|
[ "${status}" -eq 1 ]
|
|
|
|
|
[ "${lines[0]}" = "error: pathspec 'commitdiff' did not match any file(s) known to git" ]
|
|
|
|
|
[ "${lines[1]}" = "error: pathspec '$HOME/selectgitfile' did not match any file(s) known to git" ]
|
|
|
|
|
}
|
|
|
|
|