Commit | Line | Data |
---|---|---|
4a9eb852 FF |
1 | #!/data/data/com.termux/files/usr/bin/bash |
2 | ||
3 | if [ $# != 1 ]; then | |
4 | echo "Specify package to run tests for as only argument" | |
5 | exit 1 | |
6 | fi | |
7 | ||
8 | PACKAGE=$1 | |
9 | TEST_DIR=packages/$PACKAGE/tests | |
10 | ||
11 | if [ ! -d $TEST_DIR ]; then | |
12 | echo "ERROR: No tests folder for package $PACKAGE" | |
13 | exit 1 | |
14 | fi | |
15 | ||
16 | NUM_TESTS=0 | |
17 | NUM_FAILURES=0 | |
18 | ||
19 | for TEST_SCRIPT in $TEST_DIR/*; do | |
20 | test -t 1 && printf "\033[32m" | |
21 | echo "Running test ${TEST_SCRIPT}..." | |
22 | (( NUM_TESTS += 1 )) | |
23 | test -t 1 && printf "\033[31m" | |
24 | ( | |
25 | assert_equals() { | |
26 | FIRST=$1 | |
27 | SECOND=$2 | |
28 | if [ "$FIRST" != "$SECOND" ]; then | |
29 | echo "assertion failed - expected '$FIRST', got '$SECOND'" | |
30 | exit 1 | |
31 | fi | |
32 | } | |
33 | set -e -u | |
34 | . $TEST_SCRIPT | |
35 | ) | |
36 | if [ $? != 0 ]; then | |
37 | (( NUM_FAILURES += 1 )) | |
38 | fi | |
39 | test -t 1 && printf "\033[0m" | |
40 | done | |
41 | ||
42 | echo "$NUM_TESTS tests run - $NUM_FAILURES failure(s)" |