Make great documentation goal 1.2, and plan the README's reorganisation and the nested-template gaps #33

Open
lilleman wants to merge 966 commits from worktree-todo-relative-dates-exact-counts into main
2 changed files with 8 additions and 6 deletions
Showing only changes of commit 4ea7cb48a5 - Show all commits
+5 -4
View File
@@ -737,15 +737,16 @@ func TestHeldPathIsReachableByFake(t *testing.T) {
} }
func TestRepeatedBareTokenOfAHeldNameIsRejected(t *testing.T) { func TestRepeatedBareTokenOfAHeldNameIsRejected(t *testing.T) {
f := newGenerator(t, writeData(t, map[string]string{"w": `"a"`}))
for src, want := range map[string]string{ for src, want := range map[string]string{
`{"format":"{w} {w} {uppercase(w)}","w":["a","b"]}`: "write {w} once", `{"format":"{w} {w} {uppercase(w)}","w":["a","b"]}`: "write {w} once",
`{"format":"{w} {w|x} {uppercase(w)}","w":["a","b"],"x":["c","d"]}`: "write {w} once", `{"format":"{w} {w|x} {uppercase(w)}","w":["a","b"],"x":["c","d"]}`: "write {w} once",
`{"format":"{n} + {n} = {calc(n * 2)}","n":["1","2"]}`: "write {n} once", `{"format":"{n} + {n} = {calc(n * 2)}","n":["1","2"]}`: "write {n} once",
`{"format":"{p.a} {q} {q} {lowercase(q)}","p":{"format":"{a}","a":"1"},"q":["A","B"]}`: "write {q} once", `{"format":"{p.a} {q} {q} {lowercase(q)}","p":{"format":"{a}","a":"1"},"q":["A","B"]}`: "write {q} once",
} { } {
_, err := linked(t, src) _, err := f.NewTemplate(src)
if err == nil || !strings.Contains(err.Error(), want) || !strings.Contains(err.Error(), "holds") { if err == nil || !strings.Contains(err.Error(), want) || !strings.Contains(err.Error(), "holds") {
t.Errorf("compile(%s) = %v, want the repeated token rejected naming %s", src, err, want) t.Errorf("NewTemplate(%s) = %v, want the repeated token rejected naming %s", src, err, want)
} }
} }
for _, ok := range []string{ for _, ok := range []string{
@@ -754,8 +755,8 @@ func TestRepeatedBareTokenOfAHeldNameIsRejected(t *testing.T) {
`{"format":"{net} x {qty} = {calc(net * qty, 2)}","net":["19.99","5.00"],"qty":["3","7"]}`, `{"format":"{net} x {qty} = {calc(net * qty, 2)}","net":["19.99","5.00"],"qty":["3","7"]}`,
`{"format":"{uppercase(w)} {uppercase(w)}","w":["a","b"]}`, `{"format":"{uppercase(w)} {uppercase(w)}","w":["a","b"]}`,
} { } {
if _, err := linked(t, ok); err != nil { if _, err := f.NewTemplate(ok); err != nil {
t.Errorf("compile(%s) = %v, want it accepted", ok, err) t.Errorf("NewTemplate(%s) = %v, want it accepted", ok, err)
} }
} }
} }
+3 -2
View File
@@ -39,6 +39,7 @@ func TestTransformOverAReference(t *testing.T) {
} }
func TestTransformArgs(t *testing.T) { func TestTransformArgs(t *testing.T) {
f := newGenerator(t, writeData(t, map[string]string{"x": `"v"`}))
for _, bad := range []string{ for _, bad := range []string{
`{"format":"{lowercase()}","x":"v"}`, `{"format":"{lowercase()}","x":"v"}`,
`{"format":"{lowercase(nope)}","x":"v"}`, `{"format":"{lowercase(nope)}","x":"v"}`,
@@ -46,8 +47,8 @@ func TestTransformArgs(t *testing.T) {
`{"format":"{lowercase(hex(2))}","x":"v"}`, `{"format":"{lowercase(hex(2))}","x":"v"}`,
`{"format":"{lowercase(x)} {x.a}","x":{"format":"{a}","a":"1"}}`, `{"format":"{lowercase(x)} {x.a}","x":{"format":"{a}","a":"1"}}`,
} { } {
if _, err := linked(t, bad); err == nil { if _, err := f.NewTemplate(bad); err == nil {
t.Errorf("compile(%s) = nil error, want it rejected", bad) t.Errorf("NewTemplate(%s) = nil error, want it rejected", bad)
} }
} }
} }