| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970 |
- package requests
- import (
- "io/ioutil"
- "testing"
- "github.com/stretchr/testify/assert"
- )
- func Test_RpcRequest(t *testing.T) {
- r := &RpcRequest{}
- r.InitWithApiInfo("product", "version", "action", "serviceCode", "endpointType")
- assert.NotNil(t, r)
- assert.Equal(t, "POST", r.GetMethod())
- assert.Equal(t, "RPC", r.GetStyle())
- assert.Equal(t, "product", r.GetProduct())
- assert.Equal(t, "version", r.GetVersion())
- assert.Equal(t, "action", r.GetActionName())
- assert.Equal(t, "serviceCode", r.GetLocationServiceCode())
- assert.Equal(t, "endpointType", r.GetLocationEndpointType())
- }
- func Test_RpcRequest_BuildQueries(t *testing.T) {
- // url
- r := &RpcRequest{}
- r.InitWithApiInfo("product", "version", "action", "serviceCode", "endpointType")
- assert.Equal(t, "/?", r.BuildQueries())
- r.addQueryParam("key", "value")
- assert.Equal(t, "/?key=value", r.BuildQueries())
- r.addQueryParam("key", "https://domain/?q=v")
- assert.Equal(t, "/?key=https%3A%2F%2Fdomain%2F%3Fq%3Dv", r.BuildQueries())
- }
- func Test_RpcRequest_BuildUrl(t *testing.T) {
- r := &RpcRequest{}
- r.InitWithApiInfo("product", "version", "action", "serviceCode", "endpointType")
- r.Domain = "domain.com"
- r.Scheme = "http"
- r.Port = "80"
- assert.Equal(t, "http://domain.com:80/?", r.BuildUrl())
- r.addQueryParam("key", "value")
- assert.Equal(t, "http://domain.com:80/?key=value", r.BuildUrl())
- r.addQueryParam("key", "https://domain/?q=v")
- assert.Equal(t, "http://domain.com:80/?key=https%3A%2F%2Fdomain%2F%3Fq%3Dv", r.BuildUrl())
- }
- func Test_RpcRequest_GetBodyReader(t *testing.T) {
- r := &RpcRequest{}
- r.InitWithApiInfo("product", "version", "action", "serviceCode", "endpointType")
- reader := r.GetBodyReader()
- b, _ := ioutil.ReadAll(reader)
- assert.Equal(t, "", string(b))
- r.addFormParam("key", "value")
- reader = r.GetBodyReader()
- b, _ = ioutil.ReadAll(reader)
- assert.Equal(t, "key=value", string(b))
- }
- func Test_RpcRequest_addPathParam(t *testing.T) {
- defer func() { //进行异常捕捉
- err := recover()
- assert.NotNil(t, err)
- assert.Equal(t, "not support", err)
- }()
- r := &RpcRequest{}
- r.InitWithApiInfo("product", "version", "action", "serviceCode", "endpointType")
- r.addPathParam("key", "value")
- }
|