From b077328328a596aab968f32c6123ff3021832bed Mon Sep 17 00:00:00 2001 From: debugtalk Date: Mon, 27 Jun 2022 18:55:06 +0800 Subject: [PATCH] fix: check case validation --- hrp/internal/convert/from_json.go | 7 +++---- hrp/internal/convert/from_postman.go | 4 ++-- hrp/internal/convert/from_swagger.go | 6 ++---- 3 files changed, 7 insertions(+), 10 deletions(-) diff --git a/hrp/internal/convert/from_json.go b/hrp/internal/convert/from_json.go index 0dbc7208..8e40f88b 100644 --- a/hrp/internal/convert/from_json.go +++ b/hrp/internal/convert/from_json.go @@ -1,8 +1,6 @@ package convert import ( - "reflect" - "github.com/pkg/errors" "github.com/httprunner/httprunner/v4/hrp" @@ -16,8 +14,9 @@ func LoadJSONCase(path string) (*hrp.TCase, error) { if err != nil { return nil, errors.Wrap(err, "load json file failed") } - if reflect.ValueOf(*caseJSON).IsZero() { - return nil, errors.New("invalid json file") + + if caseJSON.TestSteps == nil { + return nil, errors.New("invalid json case file, missing teststeps") } err = caseJSON.MakeCompat() diff --git a/hrp/internal/convert/from_postman.go b/hrp/internal/convert/from_postman.go index 01d9f3e5..9dbbfa7c 100644 --- a/hrp/internal/convert/from_postman.go +++ b/hrp/internal/convert/from_postman.go @@ -129,8 +129,8 @@ func loadCasePostman(path string) (*CasePostman, error) { if err != nil { return nil, errors.Wrap(err, "load postman file failed") } - if reflect.ValueOf(*casePostman).IsZero() { - return nil, errors.New("invalid postman file") + if casePostman.Items == nil { + return nil, errors.New("invalid postman case file, missing items") } return casePostman, nil diff --git a/hrp/internal/convert/from_swagger.go b/hrp/internal/convert/from_swagger.go index 0c7677e4..b4f5ad5f 100644 --- a/hrp/internal/convert/from_swagger.go +++ b/hrp/internal/convert/from_swagger.go @@ -1,8 +1,6 @@ package convert import ( - "reflect" - "github.com/go-openapi/spec" "github.com/pkg/errors" @@ -17,8 +15,8 @@ func LoadSwaggerCase(path string) (*hrp.TCase, error) { if err != nil { return nil, errors.Wrap(err, "load swagger file failed") } - if reflect.ValueOf(*caseSwagger).IsZero() { - return nil, errors.New("invalid swagger file") + if caseSwagger.Definitions == nil { + return nil, errors.New("invalid swagger case file, missing definitions") } // TODO: convert swagger to TCase