1
0
mirror of https://github.com/sstephenson/bats.git synced 2024-11-17 03:32:27 +01:00

Merge pull request #56 from ahippo/load-abs

Make `load` handle absolute paths too
This commit is contained in:
Sam Stephenson 2014-06-01 17:58:42 -05:00
commit 6b4802cf54
2 changed files with 19 additions and 2 deletions

View File

@ -30,13 +30,20 @@ BATS_TEST_DIRNAME="$(dirname "$BATS_TEST_FILENAME")"
BATS_TEST_NAMES=()
load() {
local filename="$BATS_TEST_DIRNAME/$1.bash"
local inc="$1"
local filename
if [[ "${inc}" == "/"* ]] ; then
filename="${inc}"
else
filename="$BATS_TEST_DIRNAME/${inc}.bash"
fi
[ -f "$filename" ] || {
echo "bats: $filename does not exist" >&2
exit 1
}
source "$BATS_TEST_DIRNAME/$1.bash"
source "${filename}"
}
run() {

View File

@ -117,6 +117,16 @@ fixtures bats
[ $status -eq 1 ]
}
@test "load sources scripts by absolute path" {
HELPER_NAME="${FIXTURE_ROOT}/test_helper.bash" run bats "$FIXTURE_ROOT/load.bats"
[ $status -eq 0 ]
}
@test "load aborts if the script, specified by an absolute path, does not exist" {
HELPER_NAME="${FIXTURE_ROOT}/nonexistent" run bats "$FIXTURE_ROOT/load.bats"
[ $status -eq 1 ]
}
@test "output is discarded for passing tests and printed for failing tests" {
run bats "$FIXTURE_ROOT/output.bats"
[ $status -eq 1 ]