aboutsummaryrefslogtreecommitdiff
path: root/test/lua/test.sh
blob: 1455f3d74a2bee628839f6be5386371074603fa3 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
#!/bin/sh

[ -z "$VIS" ] && VIS="../../vis"
$VIS -v

TESTS_OK=0
TESTS_RUN=0

export VIS_PATH=.
export VIS_THEME=theme

if [ $# -gt 0 ]; then
	test_files=$*
else
	test_files="$(find . -type f -name "*.in") basic_empty_file.in"
fi

for t in $test_files; do
	TESTS_RUN=$((TESTS_RUN + 1))
	t=${t%.in}
	t=${t#./}
	$VIS "$t".in

	printf "%-30s" "$t"
	if [ -e "$t".out ]; then
		if cmp -s "$t".ref "$t".out 2> /dev/null; then
			printf "PASS\n"
			TESTS_OK=$((TESTS_OK + 1))
		else
			printf "FAIL\n"
			diff -u "$t".ref "$t".out > "$t".err
		fi
	else
		printf "FAIL\n"
	fi
done

printf "Tests ok %d/%d\n" $TESTS_OK $TESTS_RUN

# set exit status
[ $TESTS_OK -eq $TESTS_RUN ]