source: project/chicken/trunk/tests/runtests.sh @ 12102

Last change on this file since 12102 was 12102, checked in by felix winkelmann, 13 years ago

added test-case for declarations in modules

File size: 3.5 KB
Line 
1#!/bin/sh
2# runtests.sh
3
4set -e
5TEST_DIR=`pwd`
6export DYLD_LIBRARY_PATH=${TEST_DIR}/..
7export LD_LIBRARY_PATH=${TEST_DIR}/..
8compile="../csc -compiler ../chicken -v -I.. -L.. -include-path .. -o a.out"
9compile_s="../csc -s -compiler ../chicken -v -I.. -L.. -include-path .."
10interpret="../csi -include-path .."
11
12echo "======================================== compiler tests ..."
13$compile compiler-tests.scm && ./a.out
14
15echo "======================================== runtime tests ..."
16$interpret -s apply-test.scm
17$compile test-gc-hooks.scm && ./a.out
18
19echo "======================================== library tests ..."
20$interpret -s library-tests.scm
21
22echo "======================================== syntax tests ..."
23$interpret -s syntax-tests.scm
24
25echo "======================================== syntax tests (compiled) ..."
26$compile syntax-tests.scm && ./a.out
27
28echo "======================================== syntax tests (matchable) ..."
29$interpret matchable.scm -s match-test.scm
30
31echo "======================================== syntax tests (loopy-loop) ..."
32$interpret -s loopy-test.scm
33
34echo "======================================== syntax tests (r5rs_pitfalls) ..."
35$interpret -i -s r5rs_pitfalls.scm
36
37echo "======================================== module tests ..."
38$interpret -include-path .. -s module-tests.scm
39
40echo "======================================== module tests (compiled) ..."
41$compile module-tests-compiled.scm && ./a.out
42
43echo "======================================== module tests (chained) ..."
44rm -f m*.import.* test-chained-modules.so
45$interpret -bnq test-chained-modules.scm
46$compile_s test-chained-modules.scm -j m3
47$compile_s m3.import.scm
48$interpret -bn test-chained-modules.so
49$interpret -bn test-chained-modules.so -e '(import m3) (s3)'
50
51echo "======================================== module tests (ec) ..."
52rm -f ec.so ec.import.*
53$interpret -bqn ec.scm ec-tests.scm
54$compile_s ec.scm -emit-import-library ec -o ec.so
55$compile_s ec.import.scm -o ec.import.so
56$interpret -bnq ec.so ec-tests.scm
57# $compile ec-tests.scm && ./a.out        # takes ages to compile
58
59echo "======================================== module tests (II) ..."
60$interpret -bnq module-tests-2.scm
61$compile module-tests-2.scm && ./a.out
62
63echo "======================================== hash-table tests ..."
64$interpret -s hash-table-tests.scm
65
66echo "======================================== port tests ..."
67$interpret -s port-tests.scm
68
69echo "======================================== fixnum tests ..."
70$compile fixnum-tests.scm && ./a.out
71
72echo "======================================== srfi-18 tests ..."
73$interpret -s srfi-18-tests.scm
74
75echo "======================================== path tests ..."
76$compile path-tests.scm && ./a.out
77
78echo "======================================== r4rstest ..."
79$interpret -e '(set! ##sys#procedure->string (constantly "#<procedure>"))' \
80  -i -s r4rstest.scm >r4rstest.log
81diff -u r4rstest.out r4rstest.log
82
83echo "======================================== locative stress test ..."
84$compile locative-stress-test.scm && ./a.out
85
86echo "======================================== embedding (1) ..."
87$compile embedded1.c && ./a.out
88
89echo "======================================== embedding (2) ..."
90$compile -e embedded2.scm && ./a.out
91
92echo "======================================== benchmarks ..."
93cd ../benchmarks
94for x in `ls *.scm`; do
95    case $x in
96        "cscbench.scm");;
97        "plists.scm");;
98        *)
99            echo $x
100            ../csc $x -compiler ../chicken -C -I.. -L.. -O2 -d0
101            ./`basename $x .scm`;;
102    esac
103done
104cd ${TEST_DIR}
105
106echo "======================================== done."
Note: See TracBrowser for help on using the repository browser.