|
|
@ -3,7 +3,8 @@ |
|
|
|
CURR_DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" >/dev/null 2>&1 && pwd )" |
|
|
|
CURR_DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" >/dev/null 2>&1 && pwd )" |
|
|
|
[ -d "$CURR_DIR" ] || { echo "FATAL: no current dir (maybe running in zsh?)"; exit 1; } |
|
|
|
[ -d "$CURR_DIR" ] || { echo "FATAL: no current dir (maybe running in zsh?)"; exit 1; } |
|
|
|
|
|
|
|
|
|
|
|
: "${E2E_SKIP:=""}" |
|
|
|
: "${E2E_INCLUDE:=""}" |
|
|
|
|
|
|
|
: "${E2E_EXCLUDE:=""}" |
|
|
|
: "${E2E_EXTRA:=""}" |
|
|
|
: "${E2E_EXTRA:=""}" |
|
|
|
|
|
|
|
|
|
|
|
# shellcheck source=./common.sh |
|
|
|
# shellcheck source=./common.sh |
|
|
@ -22,9 +23,34 @@ section "BASIC TESTS" |
|
|
|
for i in $CURR_DIR/test_*.sh ; do |
|
|
|
for i in $CURR_DIR/test_*.sh ; do |
|
|
|
base=$(basename "$i" .sh) |
|
|
|
base=$(basename "$i" .sh) |
|
|
|
skip=false |
|
|
|
skip=false |
|
|
|
for skiptest in "${E2E_SKIP[@]}"; do |
|
|
|
included=false |
|
|
|
[[ "$skiptest" =~ (^| )${base}($| ) ]] && skip=true |
|
|
|
excluded=false |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
# prepare to skip test, if it's in the exclusion list |
|
|
|
|
|
|
|
for excludetest in "${E2E_EXCLUDE[@]}"; do |
|
|
|
|
|
|
|
[[ "$excludetest" =~ (^| )${base}($| ) ]] && excluded=true |
|
|
|
|
|
|
|
done |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
# (re-)add test to list, if it's on inclusion list |
|
|
|
|
|
|
|
for includetest in "${E2E_INCLUDE[@]}"; do |
|
|
|
|
|
|
|
[[ "$includetest" =~ (^| )${base}($| ) ]] && included=true |
|
|
|
done |
|
|
|
done |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
if [[ -z "${E2E_INCLUDE}" ]]; then # no explicit include list given |
|
|
|
|
|
|
|
if $excluded; then # test is on explicit exclude list |
|
|
|
|
|
|
|
skip=true |
|
|
|
|
|
|
|
fi |
|
|
|
|
|
|
|
else |
|
|
|
|
|
|
|
if $included && $excluded; then # test is in both lists, so we include it |
|
|
|
|
|
|
|
warn "Test ${base} is in both, exclude and include list. Include list takes precedence." |
|
|
|
|
|
|
|
skip=false |
|
|
|
|
|
|
|
fi |
|
|
|
|
|
|
|
if ! $included; then # test is not in include list -> skip |
|
|
|
|
|
|
|
skip=true |
|
|
|
|
|
|
|
fi |
|
|
|
|
|
|
|
fi |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
# skip or run test |
|
|
|
if [ "$skip" = true ]; then |
|
|
|
if [ "$skip" = true ]; then |
|
|
|
highlight "***** Skipping $base *****" |
|
|
|
highlight "***** Skipping $base *****" |
|
|
|
else |
|
|
|
else |
|
|
@ -33,11 +59,12 @@ for i in $CURR_DIR/test_*.sh ; do |
|
|
|
fi |
|
|
|
fi |
|
|
|
done |
|
|
|
done |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
# Additional (extra) tests |
|
|
|
if [[ -n "$E2E_EXTRA" ]]; then |
|
|
|
if [[ -n "$E2E_EXTRA" ]]; then |
|
|
|
section "EXTRA TESTS" |
|
|
|
section "EXTRA TESTS" |
|
|
|
for i in $CURR_DIR/extra_test_*.sh ; do |
|
|
|
for i in $CURR_DIR/extra_test_*.sh ; do |
|
|
|
base=$(basename "$i" .sh) |
|
|
|
base=$(basename "$i" .sh) |
|
|
|
if [[ $E2E_SKIP =~ (^| )$base($| ) ]]; then |
|
|
|
if [[ $E2E_EXCLUDE =~ (^| )$base($| ) ]]; then |
|
|
|
highlight "***** Skipping $base *****" |
|
|
|
highlight "***** Skipping $base *****" |
|
|
|
else |
|
|
|
else |
|
|
|
highlight "***** Running $base *****" |
|
|
|
highlight "***** Running $base *****" |
|
|
|