46 lines
		
	
	
		
			1016 B
		
	
	
	
		
			Bash
		
	
	
		
			Executable File
		
	
	
	
	
			
		
		
	
	
			46 lines
		
	
	
		
			1016 B
		
	
	
	
		
			Bash
		
	
	
		
			Executable File
		
	
	
	
	
| #!/bin/bash
 | |
| 
 | |
| black='\E[30m'
 | |
| red='\E[31m'
 | |
| green='\E[32m'
 | |
| yellow='\E[33m'
 | |
| blue='\E[34m'
 | |
| magenta='\E[35m'
 | |
| cyan='\E[36m'
 | |
| white='\E[37m'
 | |
| 
 | |
| if [ -f $2 ]; then
 | |
|   data=$2
 | |
|   if [ -f $1.summ ]; then rm $1.summ; fi
 | |
|   if [ -f $1.snap ]; then rm $1.snap; fi
 | |
| else
 | |
|   data=$1
 | |
| fi
 | |
| 
 | |
| if ! ./$1 < $data > /dev/null 2> .runtest.log ; then
 | |
|   echo -e  $red Test $1 failed: $black
 | |
|   echo -e $blue
 | |
|   cat .runtest.log
 | |
|   echo -e $black
 | |
|   exit 1
 | |
| else
 | |
|   if [ -f $1.summ ]; then
 | |
|     if [ `grep "FATAL ERROR" $1.summ | wc -l` -gt 0 ]; then
 | |
|       echo -e  $red "Test $1 failed (FATAL ERROR, read the file $1.summ for details)" $black
 | |
|       echo -e $blue
 | |
|       cat .runtest.log
 | |
|       echo -e $black
 | |
|       exit 1;
 | |
|     fi
 | |
| 
 | |
|     if [ `grep "FAILED THE TESTS OF ERROR-EXITS" $1.summ | wc -l` -gt 0 ]; then
 | |
|       echo -e  $red "Test $1 failed (FAILED THE TESTS OF ERROR-EXITS, read the file $1.summ for details)" $black
 | |
|       echo -e $blue
 | |
|       cat .runtest.log
 | |
|       echo -e $black
 | |
|       exit 1;
 | |
|     fi      
 | |
|   fi
 | |
|   echo -e $green Test $1 passed$black
 | |
| fi
 | 
