66 lines
1.1 KiB
Bash
66 lines
1.1 KiB
Bash
load common
|
|
load_fixtures
|
|
|
|
@test "Default /bin/ls" {
|
|
echo "
|
|
By default, the value of LS_PROGRAM should be /bin/ls
|
|
"
|
|
|
|
# shellcheck source=/dev/null
|
|
YADM_TEST=1 source "$T_YADM"
|
|
status=0
|
|
output=$( require_ls; echo "$LS_PROGRAM" ) || {
|
|
status=$?
|
|
true
|
|
}
|
|
|
|
echo "output=$output"
|
|
|
|
[ "$status" == 0 ]
|
|
[ "$output" = "/bin/ls" ]
|
|
}
|
|
|
|
@test "Fallback on 'ls'" {
|
|
echo "
|
|
When LS_PROGRAM doesn't exist, use 'ls'
|
|
"
|
|
|
|
# shellcheck source=/dev/null
|
|
YADM_TEST=1 source "$T_YADM"
|
|
status=0
|
|
LS_PROGRAM="/ls/missing"
|
|
output=$( require_ls; echo "$LS_PROGRAM" ) || {
|
|
status=$?
|
|
true
|
|
}
|
|
|
|
echo "output=$output"
|
|
|
|
[ "$status" == 0 ]
|
|
[ "$output" = "ls" ]
|
|
}
|
|
|
|
@test "Fail if ls isn't in PATH" {
|
|
echo "
|
|
When LS_PROGRAM doesn't exist, use 'ls'
|
|
"
|
|
|
|
# shellcheck source=/dev/null
|
|
YADM_TEST=1 source "$T_YADM"
|
|
status=0
|
|
LS_PROGRAM="/ls/missing"
|
|
savepath="$PATH"
|
|
# shellcheck disable=SC2123
|
|
PATH=
|
|
output=$( require_ls 2>&1; echo "$LS_PROGRAM" ) || {
|
|
status=$?
|
|
true
|
|
}
|
|
PATH="$savepath"
|
|
|
|
echo "output=$output"
|
|
|
|
[ "$status" != 0 ]
|
|
[[ "$output" =~ functionality\ requires\ .ls.\ to\ be\ installed ]]
|
|
}
|
|
|