summaryrefslogtreecommitdiff
path: root/test/test_lms_ordo.ml
diff options
context:
space:
mode:
Diffstat (limited to 'test/test_lms_ordo.ml')
-rw-r--r--test/test_lms_ordo.ml36
1 files changed, 25 insertions, 11 deletions
diff --git a/test/test_lms_ordo.ml b/test/test_lms_ordo.ml
index 84c4776..219e51f 100644
--- a/test/test_lms_ordo.ml
+++ b/test/test_lms_ordo.ml
@@ -502,13 +502,15 @@ let make_suite ~label ~fixture_path ~fixture_sha256 ~window_first ~window_last ~
this function declared [by_id]/[explained_counts] but never actually
populated the latter (the mechanism this comment sits in) -- L1 was
already CLOSED by the time that task shipped, so it had nothing real
- to explain and the gap went unexercised. L3/L4 (Witnesses task,
- 2026-08-22, both 2023-2024-only) are the first live tests of it. *)
- let allow_list_id_for_date d =
- if String.equal d "2024-02-24" then Some "L3"
- else if String.equal d "2023-12-24" then Some "L4"
- else None
- in
+ to explain and the gap went unexercised. L4 (Witnesses task,
+ 2026-08-22, 2023-2024-only) is the first live test of it. L3's own
+ "2024-02-24" branch (bissextile-shift task, 2026-08-22) is REMOVED,
+ not left dead: the fix makes that date's Creed match outright, so the
+ branch would never fire again, and a stale date->id mapping for a
+ now-closed entry is exactly the kind of thing this file's own
+ "must be visible as a real change" discipline (this comment's own
+ opening sentence) argues against leaving in place. *)
+ let allow_list_id_for_date d = if String.equal d "2023-12-24" then Some "L4" else None in
let test_creed_matches_or_is_explained () =
let ordo = ordo_rows fixture_path in
let colitur = colitur_rows ~year_lo ~year_hi ~window_first ~window_last in
@@ -651,17 +653,29 @@ let allow_list_path = "../data/ef/expected-divergences-lms.sexp"
ever looks at its own explained_counts. Fixed to the two ids this task
added (L3, L4) -- L1 is CLOSED/removed and L2 is deliberately prose-only
(see the sexp file's own header on why), so neither is expected here. *)
-let test_allow_list_ids_are_exactly_l3_l4 () =
+(* L3 CLOSED (bissextile-shift task, 2026-08-22): removed from the active
+ sexp record set -- see its own now-prose closure note in
+ data/ef/expected-divergences-lms.sexp for the fix and the measured
+ blast radius. Only L4 remains active. *)
+let test_allow_list_ids_are_exactly_l4 () =
let ids = List.sort String.compare (List.map (fun e -> e.id) (load_allow_list allow_list_path)) in
- Alcotest.(check (list string)) "the LMS allow-list declares exactly L3 and L4" [ "L3"; "L4" ] ids
+ Alcotest.(check (list string)) "the LMS allow-list declares exactly L4" [ "L4" ] ids
-let suite_allow_list = ("lms-ordo-allow-list", [ Alcotest.test_case "declares exactly L3 and L4" `Quick test_allow_list_ids_are_exactly_l3_l4 ])
+let suite_allow_list = ("lms-ordo-allow-list", [ Alcotest.test_case "declares exactly L4" `Quick test_allow_list_ids_are_exactly_l4 ])
let suite_2023_2024 =
make_suite ~label:"lms-ordo-2023-2024" ~fixture_path:"fixtures/lms-ordo-2023-2024.sexp"
~fixture_sha256:"c8d9d4b790f6b4438e932f70dad8ebe9a0316662f1eb02c26248e04c7be1a62b" ~window_first:"2023-12-01"
~window_last:"2024-12-31" ~year_lo:2022 ~year_hi:2025 ~allow_list_path ~expected_rows:397
- ~expected_bvm_votive:12 ~expected_proper:182 ~expected_common:2 ~expected_preceding_sunday:61
+ (* expected_proper 182 -> 181 (bissextile-shift task, 2026-08-22): 24
+ February 2024, previously Matthias's own Proper Mass, is now the
+ Ember Saturday of Lent's own temporal proper -- Own_slug-sourced, not
+ Proper, so it leaves this bucket's population rather than merely
+ changing which slug's proper it is (see this file's own header on why
+ Own_slug is excluded). Matthias himself moves to 25 February, an
+ I-class Sunday that admits him not even as a commemoration (RG16(a)),
+ so his own Mass is not said anywhere in this window any more. *)
+ ~expected_bvm_votive:12 ~expected_proper:181 ~expected_common:2 ~expected_preceding_sunday:61
~expected_ascension_week:1
let suite_2024_2025 =