aboutsummaryrefslogtreecommitdiff
path: root/internal/i18n/override_test.go
diff options
context:
space:
mode:
Diffstat (limited to 'internal/i18n/override_test.go')
-rw-r--r--internal/i18n/override_test.go28
1 files changed, 28 insertions, 0 deletions
diff --git a/internal/i18n/override_test.go b/internal/i18n/override_test.go
new file mode 100644
index 0000000..bac5e2c
--- /dev/null
+++ b/internal/i18n/override_test.go
@@ -0,0 +1,28 @@
+package i18n
+
+import (
+ "os"
+ "path/filepath"
+ "testing"
+)
+
+func TestUserOverridePartialAndMap(t *testing.T) {
+ dir := t.TempDir()
+ os.WriteFile(filepath.Join(dir, "fr.ini"),
+ []byte("banner_gospel = Évangile\nversion.vul = Vulgate (latin)\n"), 0o644)
+ SetUserDir(dir)
+ t.Cleanup(func() { SetUserDir("") })
+ u := Get("fr")
+ if u.BannerGospel != "Évangile" {
+ t.Errorf("scalar override: BannerGospel = %q", u.BannerGospel)
+ }
+ if u.Version["vul"] != "Vulgate (latin)" {
+ t.Errorf("map override: version.vul = %q", u.Version["vul"])
+ }
+ if u.Version["drb"] != "Douay-Rheims (English)" {
+ t.Errorf("map fallback: version.drb = %q (want English baseline)", u.Version["drb"])
+ }
+ if u.BannerReadings != "Readings" {
+ t.Errorf("scalar fallback: BannerReadings = %q (want English)", u.BannerReadings)
+ }
+}