1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
|
package bible
import (
"os"
"path/filepath"
"testing"
)
func TestUserCorpusOverride(t *testing.T) {
dir := t.TempDir()
os.WriteFile(filepath.Join(dir, "drb.tsv"), []byte("Genesis\tGn\t1\t1\t1\tUSER TEXT\n"), 0o644)
os.WriteFile(filepath.Join(dir, "drb.ini"), []byte("lang = en\nname = User DRB\npsalm_system = drb\n"), 0o644)
SetUserCorporaDir(dir)
t.Cleanup(func() { SetUserCorporaDir("") })
if got := Verses("drb", "Genesis", 1); len(got) == 0 || got[0].Text != "USER TEXT" {
t.Fatalf("user drb.tsv did not override embed: %+v", got)
}
m, _ := Meta("drb")
if m.Name != "User DRB" {
t.Fatalf("user sidecar not used: %+v", m)
}
}
func TestUserCorpusNewCode(t *testing.T) {
dir := t.TempDir()
os.WriteFile(filepath.Join(dir, "fr-x.tsv"), []byte("Genesis\tGn\t1\t1\t1\tAu commencement\n"), 0o644)
os.WriteFile(filepath.Join(dir, "fr-x.ini"), []byte("lang = fr\nname = Test FR\npsalm_system = vulgate\n"), 0o644)
SetUserCorporaDir(dir)
t.Cleanup(func() { SetUserCorporaDir("") })
if l := CorporaForLang("fr"); len(l) != 1 || l[0].Code != "fr-x" {
t.Fatalf("new fr corpus not registered: %+v", l)
}
}
|