Compare commits
6 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| da2886ab11 | |||
| 3618315947 | |||
| 28a4a7b309 | |||
| 4d8a89852b | |||
| 60574a9378 | |||
| 2a388c0108 |
+115
-93
File diff suppressed because it is too large
Load Diff
+31
-26
@@ -47,6 +47,7 @@ var runtimeObj = map[string]interface{}{
|
||||
|
||||
type validateTest struct {
|
||||
Num *int `json:"num" require:"true"`
|
||||
Name *string `json:"name" maxLength:"4"`
|
||||
Str *string `json:"str" pattern:"^[a-d]*$" maxLength:"4"`
|
||||
Test *errLength `json:"test"`
|
||||
List []*string `json:"list" pattern:"^[a-d]*$" maxLength:"4"`
|
||||
@@ -77,7 +78,7 @@ func mockResponse(statusCode int, content string, mockerr error) (res *http.Resp
|
||||
}
|
||||
|
||||
func TestCastError(t *testing.T) {
|
||||
err := NewCastError("cast error")
|
||||
err := NewCastError(String("cast error"))
|
||||
utils.AssertEqual(t, "cast error", err.Error())
|
||||
}
|
||||
|
||||
@@ -122,10 +123,10 @@ func TestConvertType(t *testing.T) {
|
||||
|
||||
func TestRuntimeObject(t *testing.T) {
|
||||
runtimeobject := NewRuntimeObject(nil)
|
||||
utils.AssertEqual(t, runtimeobject.IgnoreSSL, false)
|
||||
utils.AssertNil(t, runtimeobject.IgnoreSSL)
|
||||
|
||||
runtimeobject = NewRuntimeObject(runtimeObj)
|
||||
utils.AssertEqual(t, false, runtimeobject.IgnoreSSL)
|
||||
utils.AssertEqual(t, false, BoolValue(runtimeobject.IgnoreSSL))
|
||||
}
|
||||
|
||||
func TestSDKError(t *testing.T) {
|
||||
@@ -139,7 +140,7 @@ func TestSDKError(t *testing.T) {
|
||||
},
|
||||
})
|
||||
utils.AssertNotNil(t, err)
|
||||
utils.AssertEqual(t, "SDKError: code message {\"hostId\":\"github.com/alibabacloud/tea\",\"httpCode\":\"404\",\"requestId\":\"dfadfa32cgfdcasd4313\"}", err.Error())
|
||||
utils.AssertEqual(t, "SDKError:\n Code: code\n Message: message\n Data: {\"hostId\":\"github.com/alibabacloud/tea\",\"httpCode\":\"404\",\"requestId\":\"dfadfa32cgfdcasd4313\"}\n", err.Error())
|
||||
}
|
||||
|
||||
func TestSDKErrorCode404(t *testing.T) {
|
||||
@@ -148,7 +149,7 @@ func TestSDKErrorCode404(t *testing.T) {
|
||||
"message": "message",
|
||||
})
|
||||
utils.AssertNotNil(t, err)
|
||||
utils.AssertEqual(t, "SDKError: 404 message ", err.Error())
|
||||
utils.AssertEqual(t, "SDKError:\n Code: 404\n Message: message\n Data: \n", err.Error())
|
||||
}
|
||||
|
||||
func TestToObject(t *testing.T) {
|
||||
@@ -227,19 +228,19 @@ func TestToMap(t *testing.T) {
|
||||
valid := &Test{
|
||||
Msg: String("tea"),
|
||||
Cast: &CastError{
|
||||
Message: "message",
|
||||
Message: String("message"),
|
||||
},
|
||||
ListPtr: StringSlice([]string{"test", ""}),
|
||||
List: []string{"list"},
|
||||
CastListPtr: []*CastError{
|
||||
&CastError{
|
||||
Message: "CastListPtr",
|
||||
Message: String("CastListPtr"),
|
||||
},
|
||||
nil,
|
||||
},
|
||||
CastList: []CastError{
|
||||
CastError{
|
||||
Message: "CastList",
|
||||
Message: String("CastList"),
|
||||
},
|
||||
},
|
||||
}
|
||||
@@ -273,13 +274,13 @@ func TestToMap(t *testing.T) {
|
||||
|
||||
invalidStr := "sdfdg"
|
||||
result = ToMap(invalidStr)
|
||||
utils.AssertEqual(t, result, map[string]interface{}{})
|
||||
utils.AssertEqual(t, map[string]interface{}{}, result)
|
||||
|
||||
result = ToMap(10)
|
||||
utils.AssertEqual(t, result, map[string]interface{}{})
|
||||
utils.AssertEqual(t, map[string]interface{}{}, result)
|
||||
|
||||
result = ToMap(nil)
|
||||
utils.AssertEqual(t, map[string]interface{}{}, result)
|
||||
utils.AssertNil(t, result)
|
||||
}
|
||||
|
||||
func Test_Retryable(t *testing.T) {
|
||||
@@ -334,30 +335,30 @@ func Test_DoRequest(t *testing.T) {
|
||||
}
|
||||
}
|
||||
request := NewRequest()
|
||||
request.Port = 80
|
||||
request.Method = "TEA TEST"
|
||||
request.Port = Int(80)
|
||||
request.Method = String("TEA TEST")
|
||||
resp, err := DoRequest(request, nil)
|
||||
utils.AssertNil(t, resp)
|
||||
utils.AssertEqual(t, `net/http: invalid method "TEA TEST"`, err.Error())
|
||||
|
||||
request.Method = ""
|
||||
request.Protocol = "https"
|
||||
request.Query = map[string]string{
|
||||
"tea": "test",
|
||||
request.Method = String("")
|
||||
request.Protocol = String("https")
|
||||
request.Query = map[string]*string{
|
||||
"tea": String("test"),
|
||||
}
|
||||
runtimeObj["httpsProxy"] = "# #%gfdf"
|
||||
resp, err = DoRequest(request, runtimeObj)
|
||||
utils.AssertNil(t, resp)
|
||||
utils.AssertEqual(t, `parse # #%gfdf: invalid URL escape "%gf"`, err.Error())
|
||||
|
||||
request.Pathname = "?log"
|
||||
request.Headers["tea"] = ""
|
||||
request.Pathname = String("?log")
|
||||
request.Headers["tea"] = String("")
|
||||
runtimeObj["httpsProxy"] = "http://someuser:somepassword@ecs.aliyun.com"
|
||||
resp, err = DoRequest(request, runtimeObj)
|
||||
utils.AssertNil(t, resp)
|
||||
utils.AssertEqual(t, `Internal error`, err.Error())
|
||||
|
||||
request.Headers["host"] = "tea-cn-hangzhou.aliyuncs.com:80"
|
||||
request.Headers["host"] = String("tea-cn-hangzhou.aliyuncs.com:80")
|
||||
resp, err = DoRequest(request, runtimeObj)
|
||||
utils.AssertNil(t, resp)
|
||||
utils.AssertEqual(t, `Internal error`, err.Error())
|
||||
@@ -376,7 +377,7 @@ func Test_DoRequest(t *testing.T) {
|
||||
runtimeObj["localAddr"] = "127.0.0.1"
|
||||
resp, err = DoRequest(request, runtimeObj)
|
||||
utils.AssertNil(t, err)
|
||||
utils.AssertEqual(t, "test", resp.Headers["tea"])
|
||||
utils.AssertEqual(t, "test", StringValue(resp.Headers["tea"]))
|
||||
}
|
||||
|
||||
func Test_DoRequestWithConcurrent(t *testing.T) {
|
||||
@@ -426,13 +427,13 @@ func Test_getHttpProxy(t *testing.T) {
|
||||
os.Setenv("no_proxy", originnoproxy)
|
||||
}()
|
||||
runtime := &RuntimeObject{
|
||||
NoProxy: "www.aliyun.com",
|
||||
NoProxy: String("www.aliyun.com"),
|
||||
}
|
||||
proxy, err := getHttpProxy("http", "www.aliyun.com", runtime)
|
||||
utils.AssertNil(t, proxy)
|
||||
utils.AssertNil(t, err)
|
||||
|
||||
runtime.NoProxy = ""
|
||||
runtime.NoProxy = nil
|
||||
os.Setenv("no_proxy", "tea")
|
||||
os.Setenv("http_proxy", "tea.aliyun.com")
|
||||
proxy, err = getHttpProxy("http", "www.aliyun.com", runtime)
|
||||
@@ -445,7 +446,7 @@ func Test_getHttpProxy(t *testing.T) {
|
||||
utils.AssertEqual(t, "tea1.aliyun.com", proxy.Path)
|
||||
utils.AssertNil(t, err)
|
||||
|
||||
runtime.HttpProxy = "tea2.aliyun.com"
|
||||
runtime.HttpProxy = String("tea2.aliyun.com")
|
||||
proxy, err = getHttpProxy("http", "www.aliyun.com", runtime)
|
||||
utils.AssertEqual(t, "tea2.aliyun.com", proxy.Path)
|
||||
utils.AssertNil(t, err)
|
||||
@@ -472,7 +473,7 @@ func Test_SetDialContext(t *testing.T) {
|
||||
utils.AssertNil(t, c)
|
||||
utils.AssertEqual(t, "dial 127.0.0.1: unknown network 127.0.0.1", err.Error())
|
||||
|
||||
runtime.LocalAddr = "127.0.0.1"
|
||||
runtime.LocalAddr = String("127.0.0.1")
|
||||
c, err = dialcontext(ctx, "127.0.0.1", "127.0.0.2")
|
||||
utils.AssertNil(t, c)
|
||||
utils.AssertEqual(t, "dial 127.0.0.1: unknown network 127.0.0.1", err.Error())
|
||||
@@ -541,7 +542,7 @@ func Test_validate(t *testing.T) {
|
||||
utils.AssertNil(t, err)
|
||||
|
||||
num := 1
|
||||
str0, str1 := "acc", "abcddd"
|
||||
str0, str1 := "abc", "abcddd"
|
||||
val := &validateTest{
|
||||
Num: &num,
|
||||
Str: &str0,
|
||||
@@ -559,6 +560,10 @@ func Test_validate(t *testing.T) {
|
||||
err = validate(reflect.ValueOf(val))
|
||||
utils.AssertEqual(t, "num should be setted", err.Error())
|
||||
|
||||
val.Name = String("最大长度")
|
||||
err = validate(reflect.ValueOf(val))
|
||||
utils.AssertEqual(t, "num should be setted", err.Error())
|
||||
|
||||
val.Num = &num
|
||||
val.Str = &str0
|
||||
val.List = []*string{&str1}
|
||||
|
||||
Reference in New Issue
Block a user