goldmark/renderer/renderer_test.go
Brad Erickson cbb021173c fix: panic on invalid NodeRenderer in renderer
Uses the previously ignored type check ok value with a similar
structure to parse.go for the With* functional options.

Changes:
runtime error: invalid memory address or nil pointer dereference
to:
<TypeName> is not a NodeRenderer
2020-12-27 11:23:28 -08:00

28 lines
545 B
Go

package renderer_test
import (
"testing"
"github.com/yuin/goldmark/renderer"
"github.com/yuin/goldmark/util"
)
type invalid struct{}
func TestInvalidNodeRenderer(t *testing.T) {
defer func() {
r := recover()
if r == nil {
t.Errorf("did not panic")
return
}
rerr := r.(error)
if rerr.Error() != "*renderer_test.invalid is not a NodeRenderer" {
t.Errorf("unexpected panic caught: %v", rerr)
}
}()
r := renderer.NewRenderer(renderer.WithNodeRenderers(util.Prioritized(&invalid{}, 1000)))
r.Render(nil, nil, nil)
}