INNER CODE UNIT · Go
TestTheDecisionIndexIsComplete
xo/usql · agents_test.go:213
func TestTheDecisionIndexIsComplete(t *testing.T) {
t.Parallel()
index := readFile(t, filepath.Join("docs", "decisions", "README.md"))
rows := make(map[string]string)
for _, m := range regexp.MustCompile(`(?m)^\| \[D(\d+)\]\(.*$`).FindAllStringSubmatch(index, -1) {
rows[m[1]] = m[0]
}
written := make(map[string]bool)
for _, d := range decisions(t) {
written[d.num] = true
want := fmt.Sprintf("| [D%s](%s) | %s | %s |", d.num, d.file, d.title, d.status)
switch got, ok := rows[d.num]; {
case !ok:
t.Errorf("D%s has no row in docs/decisions/README.md. Add:\n%s", d.num, want)
case got != want:
t.Errorf("D%s: the row in docs/decisions/README.md is\n%s\nand the file says\n%s", d.num, got, want)
}
}