feat: extract variables

This commit is contained in:
debugtalk
2021-09-30 13:19:54 +08:00
parent 292424e635
commit df423722c3
6 changed files with 80 additions and 30 deletions

View File

@@ -80,6 +80,20 @@ type ResponseObject struct {
validationResults map[string]interface{}
}
func (v *ResponseObject) Extract(extractors map[string]string) map[string]interface{} {
if extractors == nil {
return nil
}
extractMapping := make(map[string]interface{})
for key, value := range extractors {
extractMapping[key] = v.searchJmespath(value)
}
log.Printf("[Extract] extractMapping: %v", extractMapping)
return extractMapping
}
func (v *ResponseObject) Validate(validators []TValidator, variablesMapping map[string]interface{}) error {
for _, validator := range validators {
// parse check value