package templates import ( "bytes" "testing" ) func TestParseStringFunctions(t *testing.T) { tm, err := Parse(`{{join (split . ":") "/"}}`) if err != nil { t.Fatal(err) } var b bytes.Buffer if err := tm.Execute(&b, "text:with:colon"); err != nil { t.Fatal(err) } want := "text/with/colon" if b.String() != want { t.Fatalf("expected %s, got %s", want, b.String()) } } func TestNewParse(t *testing.T) { tm, err := NewParse("foo", "this is a {{ . }}") if err != nil { t.Fatal(err) } var b bytes.Buffer if err := tm.Execute(&b, "string"); err != nil { t.Fatal(err) } want := "this is a string" if b.String() != want { t.Fatalf("expected %s, got %s", want, b.String()) } }