7744fe0bd628c836bc4f1085fe3aa5c966fb58dd
[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=$1
8
9 sbcl --eval "(asdf:load-system :cl-nl-test)" --eval "(quit)" &> /dev/null
10 COMMANDS=$(sbcl --noinform --disable-ldb --lose-on-corruption --end-runtime-options --eval "(asdf:load-system :cl-nl-test)" --eval "(cl-nl-test::test-commands \"$1\")" --eval "(quit)" 2> /dev/null | sed -n '/^----$/,$p' | tail -n +2)
11
12 scalafile=$(mktemp -u -p .)
13 clfile=$(mktemp -u -p .)
14
15 echo "$COMMANDS" | bin/runcmd.scala | sed -n '/^----$/,$p' | tail -n +2 > $scalafile
16 sbcl --noinform --disable-ldb --lose-on-corruption --end-runtime-options --eval "(asdf:load-system :cl-nl-test)" --eval "(cl-nl-test::diagnose-test \"$1\")" --eval "(quit)" 2> /dev/null | sed -n '/^----$/,$p' | tail -n +2 > $clfile
17
18 vimdiff $scalafile $clfile
19
20 rm $scalafile
21 rm $clfile