1*bf2c3715SXin Li#!/bin/bash 2*bf2c3715SXin Li 3*bf2c3715SXin Liblack='\E[30m' 4*bf2c3715SXin Lired='\E[31m' 5*bf2c3715SXin Ligreen='\E[32m' 6*bf2c3715SXin Liyellow='\E[33m' 7*bf2c3715SXin Liblue='\E[34m' 8*bf2c3715SXin Limagenta='\E[35m' 9*bf2c3715SXin Licyan='\E[36m' 10*bf2c3715SXin Liwhite='\E[37m' 11*bf2c3715SXin Li 12*bf2c3715SXin Liif [ -f $2 ]; then 13*bf2c3715SXin Li data=$2 14*bf2c3715SXin Li if [ -f $1.summ ]; then rm $1.summ; fi 15*bf2c3715SXin Li if [ -f $1.snap ]; then rm $1.snap; fi 16*bf2c3715SXin Lielse 17*bf2c3715SXin Li data=$1 18*bf2c3715SXin Lifi 19*bf2c3715SXin Li 20*bf2c3715SXin Liif ! ./$1 < $data > /dev/null 2> .runtest.log ; then 21*bf2c3715SXin Li echo -e $red Test $1 failed: $black 22*bf2c3715SXin Li echo -e $blue 23*bf2c3715SXin Li cat .runtest.log 24*bf2c3715SXin Li echo -e $black 25*bf2c3715SXin Li exit 1 26*bf2c3715SXin Lielse 27*bf2c3715SXin Li if [ -f $1.summ ]; then 28*bf2c3715SXin Li if [ `grep "FATAL ERROR" $1.summ | wc -l` -gt 0 ]; then 29*bf2c3715SXin Li echo -e $red "Test $1 failed (FATAL ERROR, read the file $1.summ for details)" $black 30*bf2c3715SXin Li echo -e $blue 31*bf2c3715SXin Li cat .runtest.log 32*bf2c3715SXin Li echo -e $black 33*bf2c3715SXin Li exit 1; 34*bf2c3715SXin Li fi 35*bf2c3715SXin Li 36*bf2c3715SXin Li if [ `grep "FAILED THE TESTS OF ERROR-EXITS" $1.summ | wc -l` -gt 0 ]; then 37*bf2c3715SXin Li echo -e $red "Test $1 failed (FAILED THE TESTS OF ERROR-EXITS, read the file $1.summ for details)" $black 38*bf2c3715SXin Li echo -e $blue 39*bf2c3715SXin Li cat .runtest.log 40*bf2c3715SXin Li echo -e $black 41*bf2c3715SXin Li exit 1; 42*bf2c3715SXin Li fi 43*bf2c3715SXin Li fi 44*bf2c3715SXin Li echo -e $green Test $1 passed$black 45*bf2c3715SXin Lifi 46