#/bin/bash start=$(date +%s.%N) absdir=$(readlink -f $(dirname $0)) ret_only=`$absdir/../mycc < $absdir/return_only.c | tail -n 1` var_maths=`$absdir/../mycc < $absdir/var_maths.c | tail -n 1` func_call=`$absdir/../mycc < $absdir/func_call.c | tail -n 1` cond_loop=`$absdir/../mycc < $absdir/cond_loop.c | tail -n 1` func_args=`$absdir/../mycc < $absdir/func_args.c | tail -n 1` ret_ans='3' var_ans='11' func_ans='8' args_ans='14' cond_ans='17' overall='0' pass="\033[32mPASSED\033[0m" fail="\033[31mFAILED\033[0m" if [ "$ret_only" -eq $ret_ans ]; then echo "return_only ... $pass" else echo -n "return_only ... $fail" echo " expected $ret_ans but got $ret_only" overall='1' fi if [ "$var_maths" -eq $var_ans ]; then echo "var_maths ..... $pass" else echo "var_maths ..... $fail" echo " expected $var_ans but got $var_maths" overall='1' fi if [ "$func_call" -eq $func_ans ]; then echo "func_call ..... $pass" else echo -n "func_call ..... $fail" echo " expected $func_ans but got $func_call" overall='1' fi if [ "$cond_loop" -eq $cond_ans ]; then echo "cond_loop ..... $pass" else echo -n "cond_loop ..... $fail" echo " expected $cond_ans but got $cond_loop" overall='1' fi if [ "$func_args" -eq $args_ans ]; then echo "func_args ..... $pass" else echo -n "func_args ..... $fail" echo " expected $args_ans but got $func_args" overall='1' fi end=$(date +%s.%N) runtime=$(python -c "print(${end} - ${start})") echo "\nCompleted 5 tests in $runtime""s" exit $overall