aboutsummaryrefslogtreecommitdiff
path: root/internal/caldata/caldata_test.go
diff options
context:
space:
mode:
authorLukasz Kasprzak <lukas@labunix.xyz>2026-07-27 12:25:46 +0200
committerLukasz Kasprzak <lukas@labunix.xyz>2026-07-27 12:25:46 +0200
commit56f3b8161f73c33fe6e25f6461d3f061af427e9e (patch)
tree7abe54aa45b3b4d9e3db0a75564d75c0d44b06ce /internal/caldata/caldata_test.go
parenta8232892b0ec94f8d077e3730143a09efcac452d (diff)
downloadlectio-56f3b8161f73c33fe6e25f6461d3f061af427e9e.tar.gz
lectio-56f3b8161f73c33fe6e25f6461d3f061af427e9e.zip
feat(caldata): embed + parse the owned universal Roman calendar (initial coverage)
Diffstat (limited to 'internal/caldata/caldata_test.go')
-rw-r--r--internal/caldata/caldata_test.go25
1 files changed, 25 insertions, 0 deletions
diff --git a/internal/caldata/caldata_test.go b/internal/caldata/caldata_test.go
new file mode 100644
index 0000000..ab7a314
--- /dev/null
+++ b/internal/caldata/caldata_test.go
@@ -0,0 +1,25 @@
+package caldata
+
+import (
+ "testing"
+
+ "github.com/lukaszkasprzak/lectio/internal/calendar"
+)
+
+func TestUniversalLoads(t *testing.T) {
+ l := Universal()
+ if l.ID != "universal" {
+ t.Fatalf("layer id = %q", l.ID)
+ }
+ rc, ok := l.Cels["assumption"]
+ if !ok || rc.Fields["rank"] != "solemnity" || rc.Fields["date"] != "08-15" {
+ t.Fatalf("assumption = %+v ok=%v", rc, ok)
+ }
+ // every entry must build into a typed Celebration whose rank parsed.
+ for slug, rc := range l.Cels {
+ c := calendar.BuildCelebrationForTest(slug, rc)
+ if c.Rank == calendar.RankFerial && rc.Fields["rank"] != "" {
+ t.Errorf("%s: rank did not parse (%q)", slug, rc.Fields["rank"])
+ }
+ }
+}