aboutsummaryrefslogtreecommitdiff
path: root/test/test_colitur.ml
diff options
context:
space:
mode:
authorLukasz Kasprzak <lukas@labunix.xyz>2026-08-20 15:44:29 +0200
committerLukasz Kasprzak <lukas@labunix.xyz>2026-08-20 15:44:29 +0200
commit987175105ead0ea78b960c0e638a81c6fd2384cf (patch)
tree15411786075824f2f7c4154fc23493d225963080 /test/test_colitur.ml
parentec70286daa72fd2a2a78a1cbab0fe2c268e5c743 (diff)
downloadcolitur-987175105ead0ea78b960c0e638a81c6fd2384cf.tar.gz
colitur-987175105ead0ea78b960c0e638a81c6fd2384cf.zip
feat(citation): the Sigla facade, total by construction
format never raises and returns an unparseable citation unchanged, so a gap degrades to today's behaviour rather than to a crash. The coverage test asserts separately that no shipped citation takes that path. verbatim is what --raw uses: an identity name table would still reformat punctuation and renumber, which would break byte-exact diffing against lectio. The existing citation-coverage walk (1970-2070) now also drives a round-trip check in the same pass: parse -> render -> parse must reach the same structure, using Book.default_spelling for names (Book.to_string returns the internal id, which is not a registered token and cannot be read back). Proved with a mutation: changing the default style's part_sep to a separator the parser does not accept reddened the round-trip case on 31 multi-part citations and nothing else; reverted.
Diffstat (limited to 'test/test_colitur.ml')
-rw-r--r--test/test_colitur.ml1
1 files changed, 1 insertions, 0 deletions
diff --git a/test/test_colitur.ml b/test/test_colitur.ml
index 6084adb..c873945 100644
--- a/test/test_colitur.ml
+++ b/test/test_colitur.ml
@@ -8,6 +8,7 @@ let () =
Test_citation.suite;
("parse", Test_citation.parse_suite);
Test_citation.render_suite;
+ ("sigla", Test_citation.sigla_suite);
Test_config.suite;
Test_overlay.suite; Test_overlay_ini.suite; Test_temporal_ef.suite; Test_validate.suite; Test_precedence.suite;
Test_calendar.suite; Test_precedence_ef.suite; Test_sanctoral_ef.suite; Test_rite_ef.suite;