mirror of
https://github.com/gin-gonic/gin.git
synced 2025-10-23 01:57:55 +08:00
add full protobuf rendering test
This commit is contained in:
parent
65a97e161f
commit
b6cb77e315
@ -15,6 +15,8 @@ import (
|
|||||||
"strings"
|
"strings"
|
||||||
"testing"
|
"testing"
|
||||||
|
|
||||||
|
testdata "github.com/gin-gonic/gin/testdata/protoexample"
|
||||||
|
"github.com/golang/protobuf/proto"
|
||||||
"github.com/stretchr/testify/assert"
|
"github.com/stretchr/testify/assert"
|
||||||
"github.com/ugorji/go/codec"
|
"github.com/ugorji/go/codec"
|
||||||
)
|
)
|
||||||
@ -252,9 +254,6 @@ b:
|
|||||||
assert.Equal(t, "application/x-yaml; charset=utf-8", w.Header().Get("Content-Type"))
|
assert.Equal(t, "application/x-yaml; charset=utf-8", w.Header().Get("Content-Type"))
|
||||||
}
|
}
|
||||||
|
|
||||||
func TestRenderProtoBuf(t *testing.T) {
|
|
||||||
}
|
|
||||||
|
|
||||||
type fail struct{}
|
type fail struct{}
|
||||||
|
|
||||||
// Hook MarshalYAML
|
// Hook MarshalYAML
|
||||||
@ -268,6 +267,25 @@ func TestRenderYAMLFail(t *testing.T) {
|
|||||||
assert.Error(t, err)
|
assert.Error(t, err)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// test Protobuf rendering
|
||||||
|
func TestRenderProtoBuf(t *testing.T) {
|
||||||
|
w := httptest.NewRecorder()
|
||||||
|
reps := []int64{int64(1), int64(2)}
|
||||||
|
label := "test"
|
||||||
|
data := &testdata.Test{
|
||||||
|
Label: &label,
|
||||||
|
Reps: reps,
|
||||||
|
}
|
||||||
|
|
||||||
|
(ProtoBuf{data}).WriteContentType(w)
|
||||||
|
protoData, err := proto.Marshal(data)
|
||||||
|
assert.NoError(t, err)
|
||||||
|
(YAML{data}).WriteContentType(w)
|
||||||
|
assert.Equal(t, "application/x-yaml; charset=utf-8", w.Header().Get("Content-Type"))
|
||||||
|
|
||||||
|
assert.Equal(t, string(protoData[:]), w.Body.String())
|
||||||
|
}
|
||||||
|
|
||||||
func TestRenderXML(t *testing.T) {
|
func TestRenderXML(t *testing.T) {
|
||||||
w := httptest.NewRecorder()
|
w := httptest.NewRecorder()
|
||||||
data := xmlmap{
|
data := xmlmap{
|
||||||
|
Loading…
x
Reference in New Issue
Block a user