From 6467fd10faf52a46bd70de4cb12653d082b8d92a Mon Sep 17 00:00:00 2001 From: Zouhair AMAZZAL Date: Wed, 7 Dec 2022 14:59:33 +0100 Subject: [PATCH] test(head-and-tail): check if the submitted file is correct and check if echo is used --- sh/tests/head-and-tail_test.sh | 28 ++++++++++++++++++++-------- 1 file changed, 20 insertions(+), 8 deletions(-) diff --git a/sh/tests/head-and-tail_test.sh b/sh/tests/head-and-tail_test.sh index d0ee2ebe0..ff212297b 100755 --- a/sh/tests/head-and-tail_test.sh +++ b/sh/tests/head-and-tail_test.sh @@ -5,12 +5,24 @@ set -euo pipefail IFS=' ' -echo insecure >> ~/.curlrc -caddy start &>/dev/null +FILENAME="student/head-and-tail.sh" -submitted=$(bash student/head-and-tail.sh) -expected=$(bash solutions/head-and-tail.sh) - -caddy stop &>/dev/null - -diff <(echo "$submitted") <(echo "$expected") +# True if FILE exists and is a regular file +if [ -f ${FILENAME} ]; then + # FILE exists and it's not empty + if [ -s ${FILENAME} ]; then + if [[ $(cat $FILENAME | grep echo | wc -l) -ne 0 ]]; then + echo "echo is not allowed in this exercise!"; + exit 1 + fi + submitted=$(bash $FILENAME) + expected=$(bash solutions/head-and-tail.sh) + diff <(echo "$submitted") <(echo "$expected") + else + echo "The file exist but is empty" + exit 1 + fi +else + echo "File does not exist" + exit 1 +fi \ No newline at end of file