1
0
mirror of https://github.com/sstephenson/bats.git synced 2026-02-25 17:28:11 +01:00

Support for TAP compliant skip directive inside test blocks.

This commit is contained in:
Ross Duggan
2013-10-18 22:05:20 +01:00
parent bc72b85871
commit f78324dfec
4 changed files with 79 additions and 1 deletions

View File

@@ -57,6 +57,12 @@ teardown() {
true
}
skip() {
BATS_TEST_SKIPPED=${1:-1}
BATS_TEST_COMPLETED=1
exit 0
}
bats_test_info() {
BATS_TEST_DESCRIPTION="$1"
}
@@ -85,15 +91,24 @@ bats_teardown_trap() {
bats_exit_trap() {
local status
local skipped
trap - err exit
skipped=""
if [ -n "$BATS_TEST_SKIPPED" ]; then
skipped=" # skip"
if [ "1" != "$BATS_TEST_SKIPPED" ]; then
skipped+=" ($BATS_TEST_SKIPPED)"
fi
fi
if [ -z "$BATS_TEST_COMPLETED" ]; then
echo "not ok $BATS_TEST_NUMBER $BATS_TEST_DESCRIPTION" >&3
echo "# $BATS_TEST_FILENAME:$BATS_LINE_NUMBER" >&3
sed -e "s/^/# /" < "$BATS_OUT" >&3
status=1
else
echo "ok $BATS_TEST_NUMBER $BATS_TEST_DESCRIPTION" >&3
echo "ok ${BATS_TEST_NUMBER}${skipped} ${BATS_TEST_DESCRIPTION}" >&3
status=0
fi