diff options
Diffstat (limited to 'test/test_rite_ef.ml')
| -rw-r--r-- | test/test_rite_ef.ml | 40 |
1 files changed, 40 insertions, 0 deletions
diff --git a/test/test_rite_ef.ml b/test/test_rite_ef.ml index c150a6d..ad9057b 100644 --- a/test/test_rite_ef.ml +++ b/test/test_rite_ef.ml @@ -87,6 +87,44 @@ let test_vigil_of_christmas_suppressed () = Alcotest.(check bool) "vigil-of-christmas appears NOWHERE in the resolved year" false appears_anywhere +(* RG16(a) task (register ยง6.0 + the sanctoral subject audit, this task's + own report): data/ef/sanctoral.sexp is left untouched (still a faithful + mirror of lectio, subject `Lord` for both entries below -- see + test_sanctoral_ef.ml's own "explicit class = lord" spot-check, which + loads that file WITHOUT applying this overlay and still passes); the + correction lives entirely in data/ef/adjustments.sexp's two [Edit] + directives, the same mechanism [test_vigil_of_christmas_suppressed] + above already proves for a sibling bootstrap defect. This is the ONE + test in the suite that observes the two retags actually take effect + through the real pipeline -- without it, a typo in either directive's + slug (silently a no-op diagnostic, not a hard failure -- Overlay.apply's + own contract) or a reverted adjustments.sexp would leave every other + test green (2 February isn't a Sunday in any golden-pinned year, and + [test_sanctoral_ef.ml] deliberately never applies the overlay). Also + re-verifies the four entries the audit confirmed correct and left + untouched, so a future accidental retag of one of THEM would be caught + here too, not just the two that changed. *) +let test_rg16a_subject_retag_in_effect () = + let layer = real_layer () in + let subject_of slug = + match Layer.find layer (Slug.of_string_exn slug) with + | Some e -> e.Layer.cel.Cel.subject + | None -> Alcotest.failf "slug %s not found in the overlaid layer" slug + in + Alcotest.(check bool) "Purification retagged Bvm (calendarium: \"B. MARIAE VIRG.\")" true + (subject_of "purification-of-the-blessed-virgin-mary" = Subject.Bvm); + Alcotest.(check bool) "Most Holy Name of Mary retagged Bvm (calendarium: \"Nominis Mariae\")" true + (subject_of "most-holy-name-of-mary" = Subject.Bvm); + Alcotest.(check bool) "Precious Blood stays Lord (calendarium: \"D. N. I. C.\") -- audit, not touched" true + (subject_of "precious-blood-of-our-lord-jesus-christ" = Subject.Lord); + Alcotest.(check bool) "Transfiguration stays Lord (calendarium: \"D. N. I. C.\") -- audit, not touched" true + (subject_of "transfiguration-of-our-lord" = Subject.Lord); + Alcotest.(check bool) "Exaltation of the Holy Cross stays Lord -- audit, not touched" true + (subject_of "exaltation-of-the-holy-cross" = Subject.Lord); + Alcotest.(check bool) + "Dedication of the Archbasilica of the Most Holy Saviour stays Lord -- audit, not touched" true + (subject_of "dedication-of-the-archbasilica-of-our-holy-savior" = Subject.Lord) + (* Coordinator review, finding 2, reproduced through the project's OWN extension path (an overlay), the same way the reviewer found it: adding an I-class feast on 25 December (competing against, and losing to, the @@ -255,6 +293,8 @@ let suite = ( "Rite_ef (real data: overlay-in-effect, domain-ceiling)", [ Alcotest.test_case "the overlay suppression is observably in effect" `Quick test_vigil_of_christmas_suppressed; + Alcotest.test_case "RG16(a) task: the two subject retags are in effect, the other four untouched" + `Quick test_rg16a_subject_retag_in_effect; Alcotest.test_case "RG96 search does not raise at the domain ceiling (real data)" `Quick test_transfer_search_does_not_raise_at_domain_ceiling; Alcotest.test_case "no transfer ever lands inside [Easter, Easter+7], 2005-2050" `Quick |
