mirror of
https://github.com/gin-gonic/gin.git
synced 2025-10-22 09:34:33 +08:00
add EmptyRender and unregister render type test case and optimized code to pass codecov report
This commit is contained in:
parent
f7f798f408
commit
585bde7dad
@ -19,21 +19,22 @@ func (EmptyRenderFactory) Instance() RenderRecycler {
|
||||
}
|
||||
|
||||
// Render writes data with custom ContentType.
|
||||
func (*EmptyRender) Render(http.ResponseWriter) error {
|
||||
func (r *EmptyRender) Render(w http.ResponseWriter) error {
|
||||
r.WriteContentType(w)
|
||||
return fmt.Errorf("empty render,you need register one first")
|
||||
}
|
||||
|
||||
// WriteContentType writes custom ContentType.
|
||||
func (*EmptyRender) WriteContentType(w http.ResponseWriter) {
|
||||
func (r *EmptyRender) WriteContentType(w http.ResponseWriter) {
|
||||
// Empty
|
||||
}
|
||||
|
||||
// Setup set data and opts
|
||||
func (*EmptyRender) Setup(data interface{}, opts ...interface{}) {
|
||||
func (r *EmptyRender) Setup(data interface{}, opts ...interface{}) {
|
||||
// Empty
|
||||
}
|
||||
|
||||
// Reset clean data and opts
|
||||
func (*EmptyRender) Reset() {
|
||||
func (r *EmptyRender) Reset() {
|
||||
// Empty
|
||||
}
|
||||
|
@ -168,11 +168,7 @@ func (r *SecureJSON) WriteContentType(w http.ResponseWriter) {
|
||||
func (r *JsonpJSON) Setup(data interface{}, opts ...interface{}) {
|
||||
r.Data = data
|
||||
if len(opts) == 1 {
|
||||
if callback, ok := opts[0].(string); ok {
|
||||
r.Callback = callback
|
||||
} else {
|
||||
r.Callback = ""
|
||||
}
|
||||
r.Callback, _ = opts[0].(string)
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -22,6 +22,7 @@ const (
|
||||
MsgPackRenderType // MsgPack Render Type
|
||||
ProtoBufRenderType // ProtoBuf Render Type
|
||||
EmptyRenderType // Empty Render Type
|
||||
unknownRenderType // Unknown Render Type,just used for test
|
||||
)
|
||||
|
||||
var (
|
||||
|
@ -25,6 +25,23 @@ import (
|
||||
// TODO unit tests
|
||||
// test errors
|
||||
|
||||
func TestRenderEmpty(t *testing.T) {
|
||||
w := httptest.NewRecorder()
|
||||
data := "empty data"
|
||||
r := Default(EmptyRenderType)
|
||||
r.Setup(data)
|
||||
err := r.Render(w)
|
||||
Recycle(EmptyRenderType, r)
|
||||
assert.EqualError(t, err, "empty render,you need register one first")
|
||||
}
|
||||
|
||||
// test not registered render type
|
||||
func TestRenderUnknown(t *testing.T) {
|
||||
r := Default(unknownRenderType)
|
||||
_, ok := r.(*EmptyRender)
|
||||
assert.True(t, ok)
|
||||
}
|
||||
|
||||
func TestRenderMsgPack(t *testing.T) {
|
||||
w := httptest.NewRecorder()
|
||||
data := map[string]interface{}{
|
||||
|
Loading…
x
Reference in New Issue
Block a user