github.com/lmorg/murex@v0.0.0-20240217211045-e081c89cd4ef/docs_test.go (about) 1 package main 2 3 import ( 4 "testing" 5 6 _ "github.com/lmorg/murex/builtins" 7 "github.com/lmorg/murex/builtins/docs" 8 "github.com/lmorg/murex/lang" 9 "github.com/lmorg/murex/test/count" 10 ) 11 12 func TestCoreDocs(t *testing.T) { 13 count.Tests(t, len(lang.GoFunctions)*3) 14 15 for name := range lang.GoFunctions { 16 17 syn, ok := docs.Synonym[name] 18 if ok && syn != "" { 19 goto passedSynTest 20 } 21 22 syn, ok = docs.Synonym["parser/"+name] 23 if !ok || syn == "" { 24 t.Errorf("Synonym for `%s` does not exist or is empty", name) 25 continue 26 } 27 28 passedSynTest: 29 sum, ok := docs.Summary[syn] 30 if !ok || sum == "" { 31 t.Errorf("Summary for `%s` does not exist or is empty", name) 32 continue 33 } 34 35 doc := docs.Definition(syn) 36 if len(doc) == 0 { 37 t.Errorf("document for `%s` does not exist or is empty", name) 38 } 39 } 40 }