feat: generate html reports for API testing #74

This commit is contained in:
xucong053
2022-02-08 16:48:53 +08:00
parent d893999f5f
commit f398f34e71
2 changed files with 5 additions and 28 deletions

View File

@@ -10,7 +10,6 @@ import (
"math"
"math/rand"
"path/filepath"
"reflect"
"strings"
"time"
@@ -131,33 +130,15 @@ func Dump2YAML(data interface{}, path string) error {
return nil
}
func formatValue(raw interface{}) interface{} {
rawValue := reflect.ValueOf(raw)
switch rawValue.Kind() {
case reflect.Map:
m := make(map[string]interface{})
for key, value := range rawValue.Interface().(map[string]interface{}) {
fmtValue, ok := value.(string)
if !ok {
b, _ := json.MarshalIndent(&value, "", " ")
fmtValue = string(b)
}
m[key] = fmtValue
}
return m
case reflect.Slice:
b, _ := json.MarshalIndent(&raw, "", " ")
return string(b)
default:
return raw
}
}
func FormatResponse(raw interface{}) interface{} {
formattedResponse := make(map[string]interface{})
for key, value := range raw.(map[string]interface{}) {
// convert value to json
formattedResponse[key] = formatValue(value)
if key == "body" {
b, _ := json.MarshalIndent(&value, "", " ")
value = string(b)
}
formattedResponse[key] = value
}
return formattedResponse
}

View File

@@ -273,10 +273,6 @@
{{- range $k, $v := $value}}
<pre>{{$k}}: {{$v}}</pre>
{{- end -}}
{{- else if eq $key "body" }}
{{- range $k, $v := $value }}
<pre>{{$k}}: {{$v}}</pre>
{{- end -}}
{{- else if eq $key "cookies" }}
{{- range $k, $v := $value }}
<pre>{{$k}}: {{$v}}</pre>