2015-10-02 14:46:41 +00:00
|
|
|
#!/usr/bin/env bash
|
2015-01-23 17:43:08 +00:00
|
|
|
|
2016-08-03 15:19:43 +00:00
|
|
|
cd "${0%/*}"
|
2015-01-23 17:43:08 +00:00
|
|
|
|
2015-08-27 14:44:04 +00:00
|
|
|
. ./mo
|
2015-01-23 17:43:08 +00:00
|
|
|
PASS=0
|
|
|
|
FAIL=0
|
|
|
|
|
|
|
|
for TEST in tests/*.expected; do
|
2016-08-03 15:19:43 +00:00
|
|
|
export BASE="${TEST%.expected}"
|
|
|
|
export MO_FALSE_IS_EMPTY=
|
2015-01-23 17:43:08 +00:00
|
|
|
|
|
|
|
echo -n "$BASE ... "
|
2016-07-21 12:06:39 +00:00
|
|
|
|
|
|
|
(
|
|
|
|
if [[ -f "${BASE}.sh" ]]; then
|
|
|
|
# Run a shell script if one exists
|
|
|
|
"${BASE}.sh"
|
|
|
|
else
|
|
|
|
# Fall back to using .env and .template
|
|
|
|
. "${BASE}.env"
|
|
|
|
echo "Do not read this input" | mo "${BASE}.template"
|
|
|
|
fi
|
2015-01-23 17:43:08 +00:00
|
|
|
) | diff -wU5 - "${TEST}" > "${BASE}.diff"
|
|
|
|
|
|
|
|
if [[ $? -ne 0 ]]; then
|
|
|
|
echo "FAIL"
|
2016-08-03 15:19:43 +00:00
|
|
|
FAIL=$(( FAIL + 1 ))
|
2015-01-23 17:43:08 +00:00
|
|
|
else
|
|
|
|
echo "ok"
|
2016-08-03 15:19:43 +00:00
|
|
|
PASS=$(( PASS + 1 ))
|
2015-01-23 17:43:08 +00:00
|
|
|
rm "${BASE}.diff"
|
|
|
|
fi
|
|
|
|
done
|
|
|
|
|
|
|
|
echo ""
|
|
|
|
echo "Pass: $PASS"
|
|
|
|
echo "Fail: $FAIL"
|
|
|
|
[[ $FAIL -gt 0 ]] && exit 1
|