Skip to content

Instantly share code, notes, and snippets.

@bfb
Last active August 29, 2015 14:06
Show Gist options
  • Save bfb/c12a97f0086ffad1fa56 to your computer and use it in GitHub Desktop.
Save bfb/c12a97f0086ffad1fa56 to your computer and use it in GitHub Desktop.
#!/bin/bash
FILES_PATH=$1
TESTS_PATH=$2
CURRENT_RESULT=""
FAILED=0
for PROBLEM in `ls $TESTS_PATH`
do
`gcc "$FILES_PATH/$PROBLEM.c" -o run 2> compiled`
PROBLEM_NUMBER=`echo "$PROBLEM" | grep '[0-9][0-9]*' -o`
if [ -a "run" ]
then
for TEST_CASE in `ls $TESTS_PATH/$PROBLEM | grep INPUT`; do
TEST_NUMBER=`echo "$TEST_CASE" | grep '[0-9][0-9]*' -o`
INPUT="$TESTS_PATH/problem_$PROBLEM_NUMBER/${TEST_CASE}"
CURRENT_RESULT=`./run $INPUT`
CORRECT_RESULT=`cat $TESTS_PATH/problem_$PROBLEM_NUMBER/${TEST_NUMBER}_OUTPUT`
if [ $CURRENT_RESULT != $CORRECT_RESULT ]
then
FAILED=$((FAILED+1))
echo $PROBLEM_NUMBER
break
fi
done
else
FAILED=$((FAILED+1))
echo $PROBLEM_NUMBER
fi
# remove compiled file
rm -rf run
done
# clean results
rm -rf compiled
exit $FAILED
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment