mirror of
https://github.com/deajan/osync
synced 2024-11-15 12:12:56 +00:00
100 lines
2.6 KiB
Bash
Executable File
100 lines
2.6 KiB
Bash
Executable File
#! /bin/sh
|
|
# vim:et:ft=sh:sts=2:sw=2
|
|
#
|
|
# shUnit2 unit tests for general commands.
|
|
#
|
|
# Copyright 2008-2021 Kate Ward. All Rights Reserved.
|
|
# Released under the Apache 2.0 license.
|
|
# http://www.apache.org/licenses/LICENSE-2.0
|
|
#
|
|
# Author: kate.ward@forestent.com (Kate Ward)
|
|
# https://github.com/kward/shunit2
|
|
#
|
|
# Disable source following.
|
|
# shellcheck disable=SC1090,SC1091
|
|
|
|
# These variables will be overridden by the test helpers.
|
|
stdoutF="${TMPDIR:-/tmp}/STDOUT"
|
|
stderrF="${TMPDIR:-/tmp}/STDERR"
|
|
|
|
# Load test helpers.
|
|
. ./shunit2_test_helpers
|
|
|
|
testSkipping() {
|
|
# We shouldn't be skipping to start.
|
|
if isSkipping; then
|
|
th_error 'skipping *should not be* enabled'
|
|
return
|
|
fi
|
|
|
|
startSkipping
|
|
was_skipping_started=${SHUNIT_FALSE}
|
|
if isSkipping; then was_skipping_started=${SHUNIT_TRUE}; fi
|
|
|
|
endSkipping
|
|
was_skipping_ended=${SHUNIT_FALSE}
|
|
if isSkipping; then was_skipping_ended=${SHUNIT_TRUE}; fi
|
|
|
|
assertEquals "skipping wasn't started" "${was_skipping_started}" "${SHUNIT_TRUE}"
|
|
assertNotEquals "skipping wasn't ended" "${was_skipping_ended}" "${SHUNIT_TRUE}"
|
|
return 0
|
|
}
|
|
|
|
testStartSkippingWithMessage() {
|
|
unittestF="${SHUNIT_TMPDIR}/unittest"
|
|
sed 's/^#//' >"${unittestF}" <<\EOF
|
|
## Start skipping with a message.
|
|
#testSkipping() {
|
|
# startSkipping 'SKIP-a-Dee-Doo-Dah'
|
|
#}
|
|
#SHUNIT_COLOR='none'
|
|
#. ${TH_SHUNIT}
|
|
EOF
|
|
# Ignoring errors with `|| :` as we only care about `FAILED` in the output.
|
|
( exec "${SHELL:-sh}" "${unittestF}" >"${stdoutF}" 2>"${stderrF}" ) || :
|
|
if ! grep '\[skipping\] SKIP-a-Dee-Doo-Dah' "${stderrF}" >/dev/null; then
|
|
fail 'skipping message was not generated'
|
|
fi
|
|
return 0
|
|
}
|
|
|
|
testStartSkippingWithoutMessage() {
|
|
unittestF="${SHUNIT_TMPDIR}/unittest"
|
|
sed 's/^#//' >"${unittestF}" <<\EOF
|
|
## Start skipping with a message.
|
|
#testSkipping() {
|
|
# startSkipping
|
|
#}
|
|
#SHUNIT_COLOR='none'
|
|
#. ${TH_SHUNIT}
|
|
EOF
|
|
# Ignoring errors with `|| :` as we only care about `FAILED` in the output.
|
|
( exec "${SHELL:-sh}" "${unittestF}" >"${stdoutF}" 2>"${stderrF}" ) || :
|
|
if grep '\[skipping\]' "${stderrF}" >/dev/null; then
|
|
fail 'skipping message was unexpectedly generated'
|
|
fi
|
|
return 0
|
|
}
|
|
|
|
setUp() {
|
|
for f in "${stdoutF}" "${stderrF}"; do
|
|
cp /dev/null "${f}"
|
|
done
|
|
|
|
# Reconfigure coloring as some tests override default behavior.
|
|
_shunit_configureColor "${SHUNIT_COLOR_DEFAULT}"
|
|
|
|
# shellcheck disable=SC2034,SC2153
|
|
SHUNIT_CMD_TPUT=${__SHUNIT_CMD_TPUT}
|
|
}
|
|
|
|
oneTimeSetUp() {
|
|
SHUNIT_COLOR_DEFAULT="${SHUNIT_COLOR}"
|
|
th_oneTimeSetUp
|
|
}
|
|
|
|
# Load and run shUnit2.
|
|
# shellcheck disable=SC2034
|
|
[ -n "${ZSH_VERSION:-}" ] && SHUNIT_PARENT=$0
|
|
. "${TH_SHUNIT}"
|