mirror of
https://github.com/httprunner/httprunner.git
synced 2026-06-03 06:49:38 +08:00
refactor: move converter from hrp internal to pkg
This commit is contained in:
28
hrp/pkg/convert/from_yaml.go
Normal file
28
hrp/pkg/convert/from_yaml.go
Normal file
@@ -0,0 +1,28 @@
|
||||
package convert
|
||||
|
||||
import (
|
||||
"reflect"
|
||||
|
||||
"github.com/pkg/errors"
|
||||
|
||||
"github.com/httprunner/httprunner/v4/hrp"
|
||||
"github.com/httprunner/httprunner/v4/hrp/internal/builtin"
|
||||
)
|
||||
|
||||
func NewYAMLCase(path string) (*hrp.TCase, error) {
|
||||
// load yaml case file
|
||||
caseJSON := new(hrp.TCase)
|
||||
err := builtin.LoadFile(path, caseJSON)
|
||||
if err != nil {
|
||||
return nil, errors.Wrap(err, "load yaml file failed")
|
||||
}
|
||||
if reflect.ValueOf(*caseJSON).IsZero() {
|
||||
return nil, errors.New("invalid yaml file")
|
||||
}
|
||||
|
||||
err = caseJSON.MakeCompat()
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
return caseJSON, nil
|
||||
}
|
||||
Reference in New Issue
Block a user