glslang tests:  Track accumulative success/fail result.  Contributed by Lei Zhang (antiagainst@google.com).

git-svn-id: https://cvs.khronos.org/svn/repos/ogl/trunk/ecosystem/public/sdk/tools/glslang@31207 e7fa87d3-cd2b-0410-9028-fcbf551c1848
diff --git a/Test/runtests b/Test/runtests
index 8a270ab..9c9dae7 100755
--- a/Test/runtests
+++ b/Test/runtests
@@ -3,6 +3,7 @@
 TARGETDIR=localResults
 BASEDIR=baseResults
 EXE=../build/install/bin/glslangValidator
+HASERROR=0
 mkdir -p localResults
 
 #
@@ -10,11 +11,11 @@
 #
 echo running configuration file test
 $EXE -c > $TARGETDIR/test.conf
-diff -b $BASEDIR/test.conf $TARGETDIR/test.conf
+diff -b $BASEDIR/test.conf $TARGETDIR/test.conf || HASERROR=1
 $EXE -i -l $TARGETDIR/test.conf specExamples.vert > $TARGETDIR/specExamples.vert.out
-diff -b $BASEDIR/specExamples.vert.out $TARGETDIR
+diff -b $BASEDIR/specExamples.vert.out $TARGETDIR || HASERROR=1
 $EXE 100Limits.vert 100.conf >  $TARGETDIR/100LimitsConf.vert.out
-diff -b $BASEDIR/100LimitsConf.vert.out $TARGETDIR/100LimitsConf.vert.out
+diff -b $BASEDIR/100LimitsConf.vert.out $TARGETDIR/100LimitsConf.vert.out || HASERROR=1
 
 #
 # isolated compilation tests
@@ -23,7 +24,7 @@
     echo Running $t...
     b=`basename $t`
     $EXE -i -l $t > $TARGETDIR/$b.out
-    diff -b $BASEDIR/$b.out $TARGETDIR/$b.out
+    diff -b $BASEDIR/$b.out $TARGETDIR/$b.out || HASERROR=1
 done < testlist
 
 if [ -a localtestlist ]
@@ -32,7 +33,7 @@
         echo Running $t...
         b=`basename $t`
         $EXE -i -l $t > $TARGETDIR/$b.out
-        diff -b $BASEDIR/$b.out $TARGETDIR/$b.out
+        diff -b $BASEDIR/$b.out $TARGETDIR/$b.out || HASERROR=1
     done < localtestlist
 fi
 
@@ -43,7 +44,7 @@
     echo Running SPIR-V $t...
     b=`basename $t`
     $EXE -H $t > $TARGETDIR/$b.out
-    diff -b $BASEDIR/$b.out $TARGETDIR/$b.out
+    diff -b $BASEDIR/$b.out $TARGETDIR/$b.out || HASERROR=1
 done
 
 #
@@ -52,7 +53,7 @@
 function runBulkTest {
     echo Running $*...
     $EXE -i -l -t $* > $TARGETDIR/$1.out
-    diff -b $BASEDIR/$1.out $TARGETDIR/$1.out
+    diff -b $BASEDIR/$1.out $TARGETDIR/$1.out || HASERROR=1
 }
 
 runBulkTest mains1.frag mains2.frag noMain1.geom noMain2.geom
@@ -70,7 +71,7 @@
 #
 echo Running reflection...
 $EXE -l -q reflection.vert > $TARGETDIR/reflection.vert.out
-diff -b $BASEDIR/reflection.vert.out $TARGETDIR/reflection.vert.out
+diff -b $BASEDIR/reflection.vert.out $TARGETDIR/reflection.vert.out || HASERROR=1
 
 #
 # multi-threaded test
@@ -78,4 +79,6 @@
 echo Comparing single thread to multithread for all tests in current directory...
 $EXE -i *.vert *.geom *.frag *.tes* *.comp > singleThread.out
 $EXE -i *.vert *.geom *.frag *.tes* *.comp -t > multiThread.out
-diff singleThread.out multiThread.out
+diff singleThread.out multiThread.out || HASERROR=1
+
+exit $HASERROR