experiments with JNI;
[mate.git] / tools / openjdktest.sh
index 2456d3b518285de683b30a240f4ef0f737bb2a4b..e07757254dd4a5c69896cfa52a11b631b8eec18f 100755 (executable)
@@ -1,21 +1,47 @@
 #!/bin/bash
 
+if [ $# = 0 ]
+then
+       echo "no arguments..."
+       exit
+fi
+
 class2test=$1
 
-openjdk="java -client"
+openjdk="java -client -Djava.library.path=rts/mock"
 openjdk_output=`mktemp`
-mate=./mate
+mate="./mate"
 mate_output=`mktemp`
 
 diff_output=`mktemp`
 
-$openjdk $class2test | grep -e '^result:' > $openjdk_output
-$mate $class2test | grep -e '^result:' > $mate_output
+$openjdk $class2test > $openjdk_output
+$mate $class2test > $mate_output
 
 diff $openjdk_output $mate_output > $diff_output
 
+openjdk_lines=`cat $openjdk_output | wc -l`
+mate_lines=`cat $mate_output | wc -l`
 diff_lines=`cat $diff_output | wc -l`
 
+function quit {
+       rm -rf $1 $2 $3
+       exit $4
+}
+
+if [ $openjdk_lines = 0 ]
+then
+       echo -e '\033[01;31mFAIL\033[0m:    ' $class2test
+       echo "no output by openjdk? abort"
+       quit $openjdk_output $mate_output $diff_output 1
+fi
+
+if [ $mate_lines = 0 ]
+then
+       echo -e '\033[01;31mFAIL\033[0m:    ' $class2test
+       echo "no output by mate? abort"
+       quit $openjdk_output $mate_output $diff_output 2
+fi
 
 if [ $diff_lines = 0 ]
 then
@@ -24,7 +50,8 @@ else
        echo -en '\033[01;31mFAIL\033[0m:    ' $class2test
        echo "                                diff:"
        cat $diff_output
+       quit $openjdk_output $mate_output $diff_output 3
 fi
 
 
-rm -f $openjdk_output $mate_output $diff_output
+quit $openjdk_output $mate_output $diff_output 0