Files
fixminer_source/python/data/test-valid2.sh
T
2020-08-27 01:12:31 +02:00

50 lines
1.1 KiB
Bash

#!/bin/bash
EXEFILE=$3
ANGELIXPRE=$ANGELIX_RUN
INPUT_NAME=$1
OUTPUT_NAME=$2
MY_TIMEOUT=$4
MY_NAME=my_output
# rm -R $MY_NAME* &>/dev/null
run_test()
{
test_case="$1"
echo $MY_TIMEOUT
if ! `which gtime` -o $MY_TIMEOUT -f "(%es)" gtimeout -k 50s 50s $ANGELIXPRE $EXEFILE < $test_case | sed -e '/^$/d' -e 's/^[ \t]*//' > $test_case$MY_NAME; then
echo Sample test \#$test_case: Runtime Error`cat $MY_TIMEOUT`
echo ========================================
echo Sample Input \#$test_case
cat $test_case
exit 2
else
if grep "Command" $MY_TIMEOUT; then
echo "ERROR";
exit -1;
fi
if diff --brief -w $test_case$MY_NAME $2; then
echo Sample test \#$test_case: Accepted`cat $MY_TIMEOUT`
exit 0
else
echo Sample test \#$test_case: Wrong Answer`cat $MY_TIMEOUT`
echo ========================================
echo Sample Input \#$test_case
cat $test_case
echo ========================================
echo Sample Output \#$2
cat $2
echo ========================================
echo My Output \#$test_case$MY_NAME
cat $test_case$MY_NAME
echo ========================================
exit 1
fi
fi
}
run_test "$INPUT_NAME" "$OUTPUT_NAME" ;
esac
exit 1