Explain the final error checking

Signed-off-by: Gilles Peskine <Gilles.Peskine@arm.com>
diff --git a/tests/scripts/basic-build-test.sh b/tests/scripts/basic-build-test.sh
index fd22f4d..96f9c47 100755
--- a/tests/scripts/basic-build-test.sh
+++ b/tests/scripts/basic-build-test.sh
@@ -285,10 +285,15 @@
 # If the coverage summary doesn't end with the expected last two lines
 # ("Branches Tested" and a blank line), either there was an error while
 # creating the coverage summary or the coverage summary reported failures.
+# The script runs under `set -e`, so most failures cause it to abort,
+# but failures on the left-hand side of a pipe are not detected (this is
+# a limitation of sh), so we check that the left-hand side of the pipe
+# succeeded by checking that it took the last action that it was expected
+# to take.
 newline='
 '
 case "$(tail -n2 coverage-summary.txt)" in
-    *"$newline"*) exit 1;;
-    "Branches Tested"*) :;;
-    *) exit 1;;
+    *"$newline"*) exit 1;; # last line was not blank
+    "Branches Tested"*) :;; # looks good
+    *) exit 1;; # next-to-last line had unexpected content
 esac