mirror of
https://github.com/zkldi/Tachi.git
synced 2026-09-26 17:07:58 +03:00
37 lines
678 B
Bash
Executable File
37 lines
678 B
Bash
Executable File
#!/bin/bash
|
|
|
|
cd "$(dirname "$0")" || exit 1
|
|
|
|
failed=()
|
|
function onFailure() {
|
|
failed+=( "$?" )
|
|
}
|
|
|
|
trap onFailure ERR
|
|
|
|
tests=(test/**.test.ts)
|
|
|
|
# for all tests
|
|
for test in "${tests[@]}"
|
|
do
|
|
# Output stderr and stdout to the terminal, but only save stderr to a file
|
|
# Isn't bash wonderful?
|
|
ts-node "$test" 2> >(tee failed-tests.log >&2)
|
|
done
|
|
|
|
# if more than 0 commands failed
|
|
if [ "${#failed[@]}" -ne 0 ]; then
|
|
# iterate through the error codes and zip them with their
|
|
# test equivalent
|
|
for (( i = 0; i < ${#failed[@]}; i++ ));
|
|
do
|
|
if [ "${failed[$i]}" -ne 0 ]; then
|
|
echo "Test ${tests[$i]} failed. exit code: ${failed[$i]}"
|
|
fi;
|
|
done
|
|
|
|
exit 1;
|
|
fi;
|
|
|
|
# success
|
|
exit 0; |