mirror of
https://github.com/httprunner/httprunner.git
synced 2026-05-13 07:39:44 +08:00
fix: failed to load json/data content in api reference
This commit is contained in:
@@ -47,7 +47,11 @@ func (path *APIPath) ToAPI() (*API, error) {
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
// 1. deal with request body compatibility
|
||||
convertCompatRequestBody(api.Request)
|
||||
// 2. deal with validators compatibility
|
||||
err = convertCompatValidator(api.Validators)
|
||||
// 3. deal with extract expr including hyphen
|
||||
convertExtract(api.Extract)
|
||||
return api, err
|
||||
}
|
||||
|
||||
@@ -182,16 +182,7 @@ func (tc *TCase) MakeCompat() (err error) {
|
||||
}()
|
||||
for _, step := range tc.TestSteps {
|
||||
// 1. deal with request body compatibility
|
||||
if step.Request != nil && step.Request.Body == nil {
|
||||
if step.Request.Json != nil {
|
||||
step.Request.Headers["Content-Type"] = "application/json; charset=utf-8"
|
||||
step.Request.Body = step.Request.Json
|
||||
step.Request.Json = nil
|
||||
} else if step.Request.Data != nil {
|
||||
step.Request.Body = step.Request.Data
|
||||
step.Request.Data = nil
|
||||
}
|
||||
}
|
||||
convertCompatRequestBody(step.Request)
|
||||
|
||||
// 2. deal with validators compatibility
|
||||
err = convertCompatValidator(step.Validators)
|
||||
@@ -205,6 +196,19 @@ func (tc *TCase) MakeCompat() (err error) {
|
||||
return nil
|
||||
}
|
||||
|
||||
func convertCompatRequestBody(request *Request) {
|
||||
if request != nil && request.Body == nil {
|
||||
if request.Json != nil {
|
||||
request.Headers["Content-Type"] = "application/json; charset=utf-8"
|
||||
request.Body = request.Json
|
||||
request.Json = nil
|
||||
} else if request.Data != nil {
|
||||
request.Body = request.Data
|
||||
request.Data = nil
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
func convertCompatValidator(Validators []interface{}) (err error) {
|
||||
for i, iValidator := range Validators {
|
||||
if _, ok := iValidator.(Validator); ok {
|
||||
|
||||
Reference in New Issue
Block a user