#!/usr/bin/env bash

if [ -z "$BASH" ] ; then
    exec bash $0 $@
fi

case "$(command -p uname)" in
    CYGWIN*) CP="${CLASSPATH};." ;;
    *)       CP="${CLASSPATH}:." ;;
esac

echo -n "translating $1 ... "

(echo ; cat $1.correct)| tr -s '\n\r' '\n' > correct
(echo ; cat $1.out)| tr -s '\n\r' '\n' > out

java jak2java.Main -s $1.jak > $1.java ; \
cat $1.java | tr -s '\n\r' '\n' > current \
|| exit 1

if diff -b -B correct current ; then
    javac -classpath "${CP}" $1.java
    java -cp "${CP}" $1 | tr -s '\n\r' '\n' > junk 
    if diff -b -B junk out ; then 
       rm -f -r correct current out junk || :
       echo succeeded
    else
       rm -f -r correct current out junk || :
       echo failed
       exit 1
    fi
else
    rm -f -r correct current out || :
    echo failed
    exit 1
fi
