diff --git a/cast_test.go b/cast_test.go index f135578..3fbcf87 100644 --- a/cast_test.go +++ b/cast_test.go @@ -50,6 +50,9 @@ func TestToString(t *testing.T) { assert.Equal(t, ToString([]byte("one time")), "one time") assert.Equal(t, ToString(template.HTML("one time")), "one time") assert.Equal(t, ToString(template.URL("http://somehost.foo")), "http://somehost.foo") + assert.Equal(t, ToString(template.JS("(1+2)")), "(1+2)") + assert.Equal(t, ToString(template.CSS("a")), "a") + assert.Equal(t, ToString(template.HTMLAttr("a")), "a") assert.Equal(t, ToString(foo), "one more time") assert.Equal(t, ToString(nil), "") assert.Equal(t, ToString(true), "true") diff --git a/caste.go b/caste.go index 2a6a1fa..2377896 100644 --- a/caste.go +++ b/caste.go @@ -244,6 +244,12 @@ func ToStringE(i interface{}) (string, error) { return string(s), nil case template.URL: return string(s), nil + case template.JS: + return string(s), nil + case template.CSS: + return string(s), nil + case template.HTMLAttr: + return string(s), nil case nil: return "", nil case fmt.Stringer: