templates_test.go 705 B

1234567891011121314151617181920212223242526272829303132333435363738
  1. package templates
  2. import (
  3. "bytes"
  4. "testing"
  5. )
  6. func TestParseStringFunctions(t *testing.T) {
  7. tm, err := Parse(`{{join (split . ":") "/"}}`)
  8. if err != nil {
  9. t.Fatal(err)
  10. }
  11. var b bytes.Buffer
  12. if err := tm.Execute(&b, "text:with:colon"); err != nil {
  13. t.Fatal(err)
  14. }
  15. want := "text/with/colon"
  16. if b.String() != want {
  17. t.Fatalf("expected %s, got %s", want, b.String())
  18. }
  19. }
  20. func TestNewParse(t *testing.T) {
  21. tm, err := NewParse("foo", "this is a {{ . }}")
  22. if err != nil {
  23. t.Fatal(err)
  24. }
  25. var b bytes.Buffer
  26. if err := tm.Execute(&b, "string"); err != nil {
  27. t.Fatal(err)
  28. }
  29. want := "this is a string"
  30. if b.String() != want {
  31. t.Fatalf("expected %s, got %s", want, b.String())
  32. }
  33. }