+40
-34
run.sh
+40
-34
run.sh
···
68
68
if [ $real = true ]
69
69
then "./$day/solution${ext}" "$part" < "$day/input-real"
70
70
else
71
-
[ "$part" = 1 ] || [ ! "$part" ] && (
72
-
cd "$day/part1-tests" || exit 1
73
-
printf '%s' "Part 1 Tests: "
71
+
if [ -d "$day/part1-tests" ] && { [ "$part" = 1 ] || [ ! "$part" ]; }
72
+
then
73
+
(
74
+
cd "$day/part1-tests" || exit 1
75
+
printf '%s' "Part 1 Tests: "
74
76
75
-
for test_case in input*
76
-
do
77
-
num=${test_case#input}
78
-
expected=$(sed -n "${num}{p;q}" < ./expected)
79
-
result=$("../solution$ext" 1 < "$test_case")
80
-
result=${result#Part\ 1:\ }
77
+
for test_case in input*
78
+
do
79
+
num=${test_case#input}
80
+
expected=$(sed -n "${num}{p;q}" < ./expected)
81
+
result=$("../solution$ext" 1 < "$test_case")
82
+
result=${result#Part\ 1:\ }
81
83
82
-
# shellcheck disable=SC2015
83
-
[ "$expected" = "$result" ] && printf '%s' "PASS " || {
84
-
printf '\n%s\n' "FAIL: Expected $expected, Got $result ($test_case)"
85
-
exit 1
86
-
}
87
-
done
88
-
printf '\n'
89
-
)
84
+
# shellcheck disable=SC2015
85
+
[ "$expected" = "$result" ] && printf '%s' "PASS " || {
86
+
printf '\n%s\n' "FAIL: Expected $expected, Got $result ($test_case)"
87
+
exit 1
88
+
}
89
+
done
90
+
printf '\n'
91
+
)
92
+
fi
90
93
91
-
[ "$part" = 2 ] || [ ! "$part" ] && (
92
-
cd "$day/part2-tests" || exit 1
93
-
printf '%s' "Part 2 Tests: "
94
+
if [ -d "$day/part2-tests" ] && { [ "$part" = 2 ] || [ ! "$part" ]; }
95
+
then
96
+
(
97
+
cd "$day/part2-tests" || exit 1
98
+
printf '%s' "Part 2 Tests: "
94
99
95
-
for test_case in input*
96
-
do
97
-
num=${test_case#input}
98
-
expected=$(sed -n "${num}{p;q}" < ./expected)
99
-
result=$("../solution$ext" 2 < "$test_case")
100
-
result=${result#Part\ 2:\ }
100
+
for test_case in input*
101
+
do
102
+
num=${test_case#input}
103
+
expected=$(sed -n "${num}{p;q}" < ./expected)
104
+
result=$("../solution$ext" 2 < "$test_case")
105
+
result=${result#Part\ 2:\ }
101
106
102
-
# shellcheck disable=SC2015
103
-
[ "$expected" = "$result" ] && printf '%s' "PASS " || {
104
-
printf '\n%s\n' "FAIL: Expected $expected, Got $result ($test_case)"
105
-
exit 1
106
-
}
107
-
done
108
-
printf '\n'
109
-
)
107
+
# shellcheck disable=SC2015
108
+
[ "$expected" = "$result" ] && printf '%s' "PASS " || {
109
+
printf '\n%s\n' "FAIL: Expected $expected, Got $result ($test_case)"
110
+
exit 1
111
+
}
112
+
done
113
+
printf '\n'
114
+
)
115
+
fi
110
116
111
117
fi