summaryrefslogtreecommitdiff
path: root/internal/psalter/psalter_test.go
blob: 612bf1d832af9b69be630212d418df8fe4b9d837 (plain) (blame)
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
package psalter

import "testing"

func TestDrbVerse(t *testing.T) {
	cases := []struct{ psalm, v, want int }{
		{34, 2, 1}, // Ps 34: k=1, title folded
		{34, 3, 2},
		{51, 3, 1}, // Ps 51: k=2 (two-line title)
		{63, 2, 1}, // Ps 63: k=1
		{1, 5, 5},  // untitled: identity
		{34, 1, 1}, // clamp: never below 1
	}
	for _, c := range cases {
		if got := DrbVerse(c.psalm, c.v); got != c.want {
			t.Errorf("DrbVerse(%d,%d)=%d want %d", c.psalm, c.v, got, c.want)
		}
	}
}

func TestHebrewToVulgateChapter(t *testing.T) {
	cases := []struct{ h, want int }{{8, 8}, {34, 33}, {9, 9}, {10, 9}, {116, 114}, {147, 146}, {150, 150}}
	for _, c := range cases {
		if got := HebrewToVulgateChapter(c.h); got != c.want {
			t.Errorf("HebrewToVulgateChapter(%d)=%d want %d", c.h, got, c.want)
		}
	}
}