--- a/marking3/knight3_test.sh Mon Jan 21 16:04:30 2019 +0000
+++ b/marking3/knight3_test.sh Tue Jan 22 12:53:05 2019 +0000
@@ -9,26 +9,33 @@
echo "" > $out
echo "Below is the feedback and provisional marks for your submission" >> $out
-echo "for assignment 7 Part 2. Please note all marks are provisional until" >> $out
+echo "for assignment 8 Advanced Part 2. Please note all marks are provisional until" >> $out
echo "ratified by the assessment board -- this is not an official" >> $out
echo "results transcript." >> $out
echo "" >> $out
-# marks for CW7 part 2
+# marks for CW8 part 2
marks=$(( 0 ))
# compilation tests
function scala_compile {
- (ulimit -t 360; JAVA_OPTS="-Xmx1g" scala "$1" 2> /dev/null 1> /dev/null)
+ (ulimit -t 30; JAVA_OPTS="-Xmx1g" scala -nc "$1" 2> /dev/null 1> /dev/null)
}
# functional tests
function scala_assert {
- (ulimit -t 360; JAVA_OPTS="-Xmx4g -Xss200m" scala -i "$1" "$2" -e "" 2> /dev/null 1> /dev/null)
+ (ulimit -t 30; JAVA_OPTS="-Xmx4g -Xss200m" scala -nc -i "$1" "$2" -e "" 2> /dev/null 1> /dev/null)
}
+function scala_assert_long {
+ (ulimit -t 60; JAVA_OPTS="-Xmx1g" scala -nc -i "$1" "$2" -e "" 2> /dev/null 1> /dev/null)
+}
+
+function scala_assert_elong {
+ (ulimit -t 90; JAVA_OPTS="-Xmx1g" scala -nc -i "$1" "$2" -e "" 2> /dev/null 1> /dev/null)
+}
# purity test
@@ -37,12 +44,12 @@
}
-# knights3: purity test
+# knights2: purity test
#
-echo "knight3.scala does not contain vars, returns, Arrays, ListBuffers etc?" | tee -a $out
+echo "knight2.scala does not contain vars, returns, Arrays, ListBuffers etc?" | tee -a $out
-if (scala_vars knight3.scala)
+if (scala_vars knight2.scala)
then
echo " --> test failed" | tee -a $out
tsts0=$(( 1 ))
@@ -55,14 +62,14 @@
# compilation test
if [ $tsts0 -eq 0 ]
then
- echo "knight3.scala runs?" | tee -a $out
+ echo "knight2.scala runs?" | tee -a $out
- if (scala_compile knight3.scala)
+ if (scala_compile knight2.scala)
then
echo " --> success" | tee -a $out
tsts1=$(( 0 ))
else
- echo " --> scala knight3.scala did not run successfully" | tee -a $out
+ echo " --> scala knight2.scala did not run successfully" | tee -a $out
tsts1=$(( 1 ))
fi
else
@@ -77,7 +84,7 @@
echo " ordered_moves(8, List((4,0)), (0,0)) == List((2,1), (1,2))" | tee -a $out
echo " ordered_moves(8, List((0,4)), (0,0)) == List((1,2), (2,1))" | tee -a $out
- if (scala_assert "knight3.scala" "knight3a_test.scala")
+ if (scala_assert "knight2.scala" "knight_test6.scala")
then
echo " --> success" | tee -a $out
marks=$(( marks + 1 ))
@@ -93,7 +100,7 @@
then
echo " first_closed_tour_heuristic(6, List((3,3))) found and correct?" | tee -a $out
- if (scala_assert "knight3.scala" "knight3b_test.scala")
+ if (scala_assert "knight2.scala" "knight_test7.scala")
then
echo " --> success" | tee -a $out
marks=$(( marks + 1 ))
@@ -109,7 +116,7 @@
echo " first_tour_heuristic(8, List((0,0))) found and correct?" | tee -a $out
echo " first_tour_heuristic(40, List((0,0))) found and correct?" | tee -a $out
- if (scala_assert "knight3.scala" "knight3c_test.scala")
+ if (scala_assert "knight2.scala" "knight_test8.scala")
then
echo " --> success" | tee -a $out
marks=$(( marks + 1 ))
@@ -119,6 +126,53 @@
fi
+
+# knights3: purity test
+#
+echo -e "knight3.scala does not contain vars, returns, Arrays, ListBuffers etc?" | tee -a $out
+
+
+if (scala_vars knight3.scala)
+then
+ echo " --> test failed" | tee -a $out
+ tsts0=$(( 0 ))
+else
+ echo " --> success" | tee -a $out
+ tsts0=$(( 0 ))
+fi
+
+# compilation test
+if [ $tsts0 -eq 0 ]
+then
+ echo "knight3.scala runs?" | tee -a $out
+
+ if (scala_compile knight3.scala)
+ then
+ echo " --> success" | tee -a $out
+ tsts1=$(( 0 ))
+ else
+ echo -e " --> test failed" | tee -a $out
+ tsts1=$(( 1 ))
+ fi
+else
+ tsts1=$(( 1 ))
+fi
+
+
+if [ $tsts1 -eq 0 ]
+then
+ echo -e " tour_on_mega_board(70, List((0,0))) found and correct?" | tee -a $out
+
+ if (scala_assert_long "knight3.scala" "knight_test9.scala")
+ then
+ echo -e " --> success" | tee -a $out
+ marks=$(( marks + 1 ))
+ else
+ echo -e " --> test failed" | tee -a $out
+ fi
+fi
+
+
## final marks
-echo "Overall mark for CW 7, Part 2" | tee -a $out
+echo "Overall mark for CW 8, Part 2" | tee -a $out
echo "$marks" | tee -a $out