strictness, ci
[minfp.git] / test.bash
1 #!/bin/bash
2 set -e
3 shopt -s nullglob
4
5 make minfp
6
7 [ $# -eq 0 ] && testfiles=(tests/*.mfp) || testfiles=("${@}")
8
9 pass=0
10 skip=0
11 fail=0
12 for t in "${testfiles[@]}"; do
13 if [ ! -f "$t" ]; then
14 echo "$t doesn't exist" >&2
15 exit 1
16 fi
17
18 exp="${t/%.mfp/.expected}"
19 if [ ! -f "$exp" ]; then
20 echo "$exp doesn't exist, skipping" >&2
21 skip=$((skip+1))
22 else
23 diff <(./minfp < "$t") "$exp"
24 [ $? -ne 0 ] && fail=$((fail+1)) || pass=$((pass+1))
25 fi
26 done
27 echo "passed : $pass" >&2
28 echo "skipped: $skip" >&2
29 echo "failed : $fail" >&2