aboutsummaryrefslogtreecommitdiff
path: root/test/test_validate.ml
diff options
context:
space:
mode:
authorLukasz Kasprzak <lukas@labunix.xyz>2026-08-22 13:38:53 +0200
committerLukasz Kasprzak <lukas@labunix.xyz>2026-08-22 13:38:53 +0200
commitff7fa965d68631b5caac771d6db3a0f2110cb5dd (patch)
tree5680164012528932aa5187cae77cc6d8fea8cc30 /test/test_validate.ml
parent41263d60432fadd2aef3f04de66b60561f89cbec (diff)
downloadcolitur-ff7fa965d68631b5caac771d6db3a0f2110cb5dd.tar.gz
colitur-ff7fa965d68631b5caac771d6db3a0f2110cb5dd.zip
test(ef): compare the LMS Ordo's formulary override STRING, not just presence
test_lms_ordo.ml's formulary-override check only asked WHETHER a Preceding_sunday day showed a "Mass of ..." override line, never WHICH Sunday it named. colitur could have resumed the wrong Sunday on all 66 such days and this layer would have stayed green -- resuming the right Sunday is precisely what step 3 of the reading chain exists to do. test_formulary_override_matches now derives the Ordo's own expected prose from Mass_formulary.t.said's own resolved slug (parsed directly, no Str/regex) and compares it against the Ordo's real text. Two narrow, evidenced exceptions, both counted rather than silently absorbed: - Christ the King's own Sunday reaches this population under a NAMED slug (ef-christ-the-king) that carries no embedded ordinal; its position among the Sundays after Pentecost varies by year, so Temporal_ef.week is read for that one slug specifically, not called generically (an earlier version of this fix read [week] for every day and was wrong -- caught by its own assertion on the very first run, because Time_after_pentecost's own last-Sunday and surplus-Sunday renumbering diverge from the raw week count. Reading the number back out of the already-resolved slug sidesteps both special cases and is not tautological with the wrong-Sunday failure mode this fix exists to catch). - Three real days between Ascension and the following Sunday (2025-05-30, 2025-06-02, 2025-06-03) are a genuine, newly-found defect: colitur resumes the nearest calendar Sunday, but the Missal, and the Ordo, keep saying Ascension's own Mass through this stretch instead. Structural (Ascension is a fixed Easter+39), not a fixture artefact, and not fixed here -- it needs a lectionary-data change out of this fix round's own scope. Documented in expected-divergences-lms.sexp as a prose-only note (no active sexp record: this file's id-lookup machinery is scoped to the Creed axis, and a second axis reusing it would let one test's "declared but never fired" check spuriously trip on the other's entry) and enforced directly by this test's own count assertion instead. Mutation-proved: offsetting step 3's Sunday lookup by an extra 7 days reddens this test (23 failures total across the suite: layers 3-6, golden pins, and lectionary_ef's own unit tests), confirmed via the compiled test binary directly; reverted clean, full suite green again.
Diffstat (limited to 'test/test_validate.ml')
0 files changed, 0 insertions, 0 deletions