commit 4982db356b79cfaf5df895944cf954f318cb4921
parent 7835c21a2e54612e597c3a75e86ab36353621129
Author: Andrew Laack <andrew@laack.co>
Date: Tue, 1 Sep 2026 20:14:26 -0500
More constraints on proper rendering.
Diffstat:
3 files changed, 34 insertions(+), 7 deletions(-)
diff --git a/learning/test/test_courses/course_0/1_example.sl b/learning/test/test_courses/course_0/1_example.sl
@@ -1,6 +1,5 @@
#TEST
##TEST
-##TEST
###TEST
=>TEST
=>eTEST
diff --git a/learning/test/test_courses/course_1/0_example.sl b/learning/test/test_courses/course_1/0_example.sl
@@ -0,0 +1,11 @@
+# TEST
+## TEST
+### TEST
+=> TEST
+=>e TEST
+```
+TEST
+```
+?? TEST
+> TEST
+* TEST
diff --git a/learning/test/test_rendering.ml b/learning/test/test_rendering.ml
@@ -4,6 +4,7 @@ let courses = Array.to_list (Render.get_course_array)
let expected_courses = ["course_0";"course_1";"course_empty"]
let course_0_page_0 = Render.render_page "course_0" "0_example.sl"
let course_0_page_1 = Render.render_page "course_0" "1_example.sl"
+let course_1_page_0 = Render.render_page "course_1" "0_example.sl"
let pages_in_order = Render.get_pages_in_order "course_0"
@@ -51,15 +52,31 @@ let test_rendering () =
*)
(* TODO: These are brittle; add classes for rendering / validation in templates. *)
- assert (not (contains course_0_page_1 "<h1>"));
- assert (not (contains course_0_page_1 "<h2>"));
- assert (not (contains course_0_page_1 "<h3>"));
- assert (not (contains course_0_page_1 "href=TEST"));
+ assert (not (contains course_0_page_1 "<h1>TEST"));
+ assert (not (contains course_0_page_1 "<h2>TEST"));
+ assert (not (contains course_0_page_1 "<h3>TEST"));
+ assert (not (contains course_0_page_1 "href=\"TEST"));
assert (not (contains course_0_page_1 "iframe"));
- assert (not (contains course_0_page_1 "<pre-formatted>"));
+ assert (not (contains course_0_page_1 "<pre-formatted>TEST"));
assert (not (contains course_0_page_1 "summary"));
assert (not (contains course_0_page_1 "quote"));
- assert (not (contains course_0_page_1 "ul"));
+ assert (not (contains course_0_page_1 "<li>"));
+
+ (*
+ Test well-formed variant of above page renders each
+ line type as expected.
+ *)
+ assert (contains course_1_page_0 "<h1>TEST");
+ assert (contains course_1_page_0 "<h2>TEST");
+ assert (contains course_1_page_0 "<h3>TEST");
+ assert (contains course_1_page_0 "href=\"TEST");
+ assert (contains course_1_page_0 "iframe");
+ assert (contains course_1_page_0 "<pre-formatted>TEST");
+ assert (contains course_1_page_0 "summary");
+ assert (contains course_1_page_0 "quote");
+ assert (contains course_1_page_0 "<li>");
+
+
(*
type line_format =