| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970 | package httpttimport (	"bytes"	"encoding/json"	"fmt"	"net/http"	"testing"	"gitee.com/xuyiping_admin/pkg/jsonpb"	"github.com/golang/protobuf/proto"	"github.com/stretchr/testify/require")func NewRequest(t *testing.T, method, path string, body proto.Message) *http.Request {	var (		req *http.Request		err error	)	switch method {	case http.MethodGet, http.MethodDelete:		var url string		if body != nil {			v := MarshalQueryPB(body)			query := v.Encode()			url = fmt.Sprintf("%s?%s", path, query)		} else {			url = path		}		req, err = http.NewRequest(method, url, nil)		require.NoError(t, err)	default:		if body != nil {			bs, err := jsonpb.MarshalBytes(body)			require.NoError(t, err)			req, err = http.NewRequest(method, path, bytes.NewReader(bs))			require.NoError(t, err)		} else {			req, err = http.NewRequest(method, path, nil)			require.NoError(t, err)		}	}	return req}func NewRequest2(t *testing.T, method, path string, body interface{}) *http.Request {	var (		req *http.Request		err error	)	switch method {	case http.MethodGet:		var url string		url = path		req, err = http.NewRequest(http.MethodGet, url, nil)		require.NoError(t, err)	default:		if body != nil {			bs, err := json.Marshal(body)			require.NoError(t, err)			req, err = http.NewRequest(method, path, bytes.NewReader(bs))			require.NoError(t, err)		} else {			req, err = http.NewRequest(method, path, nil)			require.NoError(t, err)		}	}	return req}
 |