micrach/templates/templates_test.go

31 lines
719 B
Go
Raw Permalink Normal View History

2026-07-16 15:22:15 +03:00
package templates
import (
"bytes"
"strings"
"testing"
2026-07-16 15:25:23 +03:00
"github.com/gofiber/template/html/v3"
2026-07-16 15:22:15 +03:00
"micrach/repositories"
)
func TestHTMLTemplatesLoadAndRender(t *testing.T) {
engine := html.New("../templates", ".html")
engine.AddFunc("Iterate", Iterate)
engine.AddFunc("NotNil", NotNil)
if err := engine.Load(); err != nil {
t.Fatalf("load templates: %v", err)
}
const message = "template compatibility"
var rendered bytes.Buffer
if err := engine.Render(&rendered, "pages/400", repositories.BadRequestHtmlData{Message: message}); err != nil {
t.Fatalf("render template: %v", err)
}
if !strings.Contains(rendered.String(), message) {
t.Fatalf("rendered template does not contain %q", message)
}
}