diff options
Diffstat (limited to 'test/test_lectionary.ml')
| -rw-r--r-- | test/test_lectionary.ml | 96 |
1 files changed, 58 insertions, 38 deletions
diff --git a/test/test_lectionary.ml b/test/test_lectionary.ml index 8fcf8e9..e88f103 100644 --- a/test/test_lectionary.ml +++ b/test/test_lectionary.ml @@ -84,21 +84,25 @@ let test_ef_data_file_loads () = (* 119 lectio ini sections, translated/widened/renamed into colitur's own Temporal_ef vocabulary, PLUS hand-authored/derived entries (tools/bootstrap_lectionary.ml's own [colitur_keys]/ - [vigil_entries]/[holy_week_entries]/[nativity_octave_entries]/ - [derived_entries] comments have the full account, task 8, branch - ef-lectionary, fix round 1): "ef-christmas-sunday-0" widens into - itself PLUS "ef-holy-name-sunday" (+1); the six Passiontide/Lent- - Ember sections translate/rename 1:1 (no count change: Passiontide - no longer widens into two colitur keys since fix round 1's - Critical 1 correction, and the three Lent Ember sections rename - rather than widen); one hand-authored entry sourced from lectio's - SANCTORAL calendar, not this lectionary ini ([ef-nativity-vigil], - +1); four hand-authored directly from the Missal, Holy Week - (+4); three hand-authored directly from the Missal, the fixed - Nativity-Octave days (+3); one entry derived from an - already-translated one rather than re-typed ([ef-holy-name], +1). - 119 + 1 + 1 + 4 + 3 + 1 = 129. *) - Alcotest.(check int) "entry count" 129 + [vigil_entries]/[holy_week_entries]/[passion_tuesday_entry]/ + [nativity_octave_entries]/[derived_entries] comments have the full + account, task 8, branch ef-lectionary, fix rounds 1-2): + "ef-christmas-sunday-0" widens into itself PLUS "ef-holy-name- + sunday" (+1); the three Lent Ember sections rename 1:1 (no count + change); "ef-passiontide-0-tuesday" is EXCLUDED (fix round 2, + Important -- it is Holy Tuesday's data, not Passion Tuesday's, + -1); the other five Passiontide sections rename 1:1 (no count + change); one hand-authored entry sourced from lectio's SANCTORAL + calendar, not this lectionary ini ([ef-nativity-vigil], +1); SIX + hand-authored directly from the Missal, all of Holy Week (+6, + fix round 2 -- Wednesday and Friday added, the first pass's + Critical bug); ONE hand-authored directly from the Missal, + Passion Tuesday's own real citation (+1, fix round 2); three + hand-authored directly from the Missal, the fixed Nativity-Octave + days (+3); one entry derived from an already-translated one + rather than re-typed ([ef-holy-name], +1). + 119 + 1 - 1 + 1 + 6 + 1 + 3 + 1 = 131. *) + Alcotest.(check int) "entry count" 131 (List.length (Lectionary.entries l)); (match Lectionary.find l (slug "ef-lent-1-monday") with | Some [ a; b ] -> @@ -127,40 +131,56 @@ let test_ef_data_file_loads () = check_entry "ef-pentecost-ember-sat" "Rom 5:1-5." "Luke 4:38-44."; (* Critical 2 fix (coordinator review round 1): the Lenten Ember days, previously dead keys under lectio's own "ef-lent-1-<weekday>" - naming -- now reachable under colitur's own slugs. *) + naming -- now reachable under colitur's own slugs. Minor, fix + round 2 (coordinator review): all THREE are pinned, not just + Wednesday -- a mutation on Friday's or Saturday's own value used + to leave the whole suite green. *) check_entry "ef-lent-ember-wed" "3 Kgs. 19:3-8" "Matt 12:38-50"; + check_entry "ef-lent-ember-fri" "Ezech 18:20-28" "John 5:1-15"; + check_entry "ef-lent-ember-sat" "1 Thess. 5:14-23" "Matt 17:1-9"; (* Passiontide widens into Passion week ONLY now (Critical 1 fix) -- "ef-passiontide-1-monday" keeps lectio's own citation; "ef-passiontide-2-monday" (Holy Monday) is Missal-sourced, - DIFFERENT text, hand-authored in [holy_week_entries]. *) + DIFFERENT text, hand-authored in [holy_week_entries]. Fix round 2 + (Important): "ef-passiontide-1-tuesday" no longer carries lectio's + own (wrong -- Holy Tuesday's) ini value; it is hand-authored from + the Missal's own real Passion Tuesday Mass, [passion_tuesday_entry]. *) check_entry "ef-passiontide-1-monday" "Jonas 3:1-10" "John 7:32-39"; - check_entry "ef-passiontide-2-monday" "Isai. 50, 5-10" "Io. 12, 1-9"; - check_entry "ef-passiontide-2-tuesday" "Ier. 11, 18-20" "Mark 14, 32-72; 15, 1-46"; - check_entry "ef-passiontide-2-thursday" "1 Cor. 11, 20-32" "Io. 13, 1-15"; - check_entry "ef-passiontide-2-saturday" "Col. 3, 1-4" "Matt. 28, 1-7"; + check_entry "ef-passiontide-1-tuesday" "Dan 14:27, 28-42" "John 7:1-13"; + check_entry "ef-passiontide-2-monday" "Isa 50:5-10" "John 12:1-9"; + (* Gospel punctuation ("15, 1-46") intentionally kept as lectio's own + ini already has it -- see bootstrap_lectionary.ml's own + [holy_week_entries] comment on this one entry. *) + check_entry "ef-passiontide-2-tuesday" "Jer 11:18-20" "Mark 14:32-72; 15, 1-46"; + (* Critical fix, round 2: Wednesday and Good Friday were left entirely + absent by the first pass, which meant step 3 quietly resumed the + preceding Sunday's Mass there (Good Friday emitting PALM SUNDAY's + Epistle and Passion) -- the FIRST pass's own reasoning ("neither + day has a single Epistle") was right about the First slot alone; + the Gospel is always unambiguous and is now always authored, and + First uses the SAME "last lesson before the Gospel" convention + this file's own Lenten Ember Wednesday entry above already uses + for an identical two-lesson shape. *) + check_entry "ef-passiontide-2-wednesday" "Isa 53:1-12" "Luke 22:39-71; 23:1-53"; + check_entry "ef-passiontide-2-thursday" "1 Cor 11:20-32" "John 13:1-15"; + check_entry "ef-passiontide-2-friday" "Ex 12:1-11" "John 18:1-40; 19:1-42"; + check_entry "ef-passiontide-2-saturday" "Col 3:1-4" "Matt 28:1-7"; (* Important 3(a) fix (coordinator review round 1): the fixed Nativity-Octave days now carry their own direct Missal formulary ("Diebus infra octavam Nativitatis Domini"), not Holy Name Sunday's (a first guess, measured wrong, reverted -- see [nativity_octave_entries]'s own comment). *) - check_entry "ef-nativity-octave-day-5" "Tit. 3, 4-7" "Luc. 2, 15-20"; - check_entry "ef-nativity-octave-day-6" "Tit. 3, 4-7" "Luc. 2, 15-20"; - check_entry "ef-nativity-octave-day-7" "Tit. 3, 4-7" "Luc. 2, 15-20"; - (* These three MUST stay absent -- Holy Wednesday and Good Friday are - deliberately not hand-authored (multi-lesson liturgies, no single - Epistle slot; see [holy_week_entries]'s own comment for why), and - Lent's OWN "ef-lent-1-wednesday/friday/saturday" keys must not + check_entry "ef-nativity-octave-day-5" "Titus 3:4-7" "Luke 2:15-20"; + check_entry "ef-nativity-octave-day-6" "Titus 3:4-7" "Luke 2:15-20"; + check_entry "ef-nativity-octave-day-7" "Titus 3:4-7" "Luke 2:15-20"; + (* Lent's OWN "ef-lent-1-wednesday/friday/saturday" keys must not reappear once renamed away (colitur never computes them as its - own slug at all). A regression net for those decisions, not - merely documentation of them. *) - let check_absent name = - match Lectionary.find l (slug name) with - | None -> () - | Some _ -> Alcotest.fail (name ^ ": must stay absent -- see bootstrap_lectionary.ml") - in - check_absent "ef-passiontide-2-wednesday"; - check_absent "ef-passiontide-2-friday"; - check_absent "ef-lent-1-wednesday" + own slug at all) -- a regression net for that decision, not + merely documentation of it. *) + match Lectionary.find l (slug "ef-lent-1-wednesday") with + | None -> () + | Some _ -> + Alcotest.fail "ef-lent-1-wednesday: must stay absent -- see bootstrap_lectionary.ml" let suite = [ ("find present", `Quick, test_find_present); |
