summaryrefslogtreecommitdiff
path: root/gopher/gophermap/mdconv/convert_test.go
diff options
context:
space:
mode:
authortjpcc <tjp@ctrl-c.club>2023-09-01 12:37:42 -0600
committertjpcc <tjp@ctrl-c.club>2023-09-01 12:37:42 -0600
commita61bcdeb314d4e0e9f6e8915b92010895170e785 (patch)
tree29611d33a0e65f334c7238a7748244ab63ad0d5c /gopher/gophermap/mdconv/convert_test.go
parent2ce5be68acd3c66d4d135d7eb68b9ecd1563aa1d (diff)
refactor gophermap template handling and add markdown conversion
Diffstat (limited to 'gopher/gophermap/mdconv/convert_test.go')
-rw-r--r--gopher/gophermap/mdconv/convert_test.go69
1 files changed, 69 insertions, 0 deletions
diff --git a/gopher/gophermap/mdconv/convert_test.go b/gopher/gophermap/mdconv/convert_test.go
new file mode 100644
index 0000000..2e39106
--- /dev/null
+++ b/gopher/gophermap/mdconv/convert_test.go
@@ -0,0 +1,69 @@
+package mdconv
+
+import (
+ "bytes"
+ "fmt"
+ "strings"
+ "testing"
+
+ "tildegit.org/tjp/sliderule/gopher/gophermap"
+)
+
+func TestConvert(t *testing.T) {
+ tests := []struct {
+ name string
+ input string
+ output string
+ }{
+ {
+ name: "basic doc",
+ input: strings.ReplaceAll(`
+iI am informational text localhost 70
+icontinued on this line localhost 70
+i localhost 70
+0this is my text file /file.txt localhost 70
+i localhost 70
+1here's a sub-menu /sub/ localhost 70
+.
+`[1:], "\n", "\r\n"),
+ output: (`
+` + "```" + `
+I am informational text
+continued on this line
+
+` + "```" + `
+
+[this is my text file](/file.txt)
+
+` + "```" + `
+
+` + "```" + `
+
+[here's a sub-menu](/sub/)
+
+`)[1:],
+ },
+ }
+
+ for _, test := range tests {
+ t.Run(test.name, func(t *testing.T) {
+ doc, err := gophermap.Parse(bytes.NewBufferString(test.input))
+ if err != nil {
+ t.Fatal(err)
+ }
+
+ buf := &bytes.Buffer{}
+ if err := Convert(buf, doc, nil); err != nil {
+ t.Fatal(err)
+ }
+
+ if buf.String() != test.output {
+ fmt.Println(">>> expected:")
+ fmt.Println(test.output)
+ fmt.Println(">>> got:")
+ fmt.Println(buf.String())
+ t.Fatal("html body mismatch")
+ }
+ })
+ }
+}