test(mailer): templates
continuous-integration/drone the build was successful Details

This commit is contained in:
Geno 2021-06-23 23:18:50 +02:00
parent 2502a3bf67
commit 8c87415917
1 changed files with 39 additions and 0 deletions

39
mailer/template_test.go Normal file
View File

@ -0,0 +1,39 @@
package mailer
import (
"testing"
"github.com/stretchr/testify/assert"
)
func TestTemplate(t *testing.T) {
assert := assert.New(t)
value := struct {
T string
}{
T: "<script>alert('you have been pwned')</script>",
}
templ := TemplateTXT("A {{ .T }")
// invalid template
assert.Nil(templ)
templ = TemplateTXT("A {{ .T }}")
// text template
assert.Equal("", templ.Render(3))
// text template
assert.Equal("A <script>alert('you have been pwned')</script>", templ.Render(&value))
templ = TemplateHTML("A {{ .T }")
// invalid template
assert.Nil(templ)
templ = TemplateHTML("A {{ .T }}")
// html template
assert.Equal("", templ.Render(3))
// html template
assert.Equal("A &lt;script&gt;alert(&#39;you have been pwned&#39;)&lt;/script&gt;", templ.Render(&value))
}