57fbf28023e1f922e09f2bf8db11a214d6b8db60
[clnl] / bin / diagnose-test
1 #!/bin/bash -e
2
3 if ! [ -n "$1" ] ; then
4   echo "Uhm, need a test name, yo"
5   exit 1
6 fi
7 TEST=$@
8
9 sbcl --eval "(asdf:load-system :cl-nl-test)" --eval "(quit)" &> /dev/null
10
11 runtestfn() {
12   sbcl --noinform --disable-ldb --lose-on-corruption --end-runtime-options \
13     --eval "(asdf:load-system :cl-nl-test)" \
14     --eval "(cl-nl-test::$1 \"$TEST\")" \
15     --eval "(quit)" 2> /dev/null | sed -n '/^----$/,$p' | tail -n +2
16 }
17
18 scalaprog=$(runtestfn "test-scala-prog")
19
20 scalafile=$(mktemp -u -p . --suffix .scala.dat)
21 clfile=$(mktemp -u -p . --suffix .cl.dat)
22
23 runtestfn "test-scala-input" | $scalaprog | sed -n '/^----$/,$p' | tail -n +2 > $scalafile
24 runtestfn "test-debug" >$clfile
25
26 vimdiff $scalafile $clfile
27
28 rm $scalafile
29 rm $clfile