diff --git a/datamodel/low/v3/paths.go b/datamodel/low/v3/paths.go index ae2b32b..52f0e38 100644 --- a/datamodel/low/v3/paths.go +++ b/datamodel/low/v3/paths.go @@ -153,7 +153,7 @@ func (p *Paths) Hash() [32]byte { } sort.Strings(l) for k := range l { - f = append(f, low.GenerateHashString(keys[l[k]].Value)) + f = append(f, fmt.Sprintf("%s-%s",l[k], low.GenerateHashString(keys[l[k]].Value))) } ekeys := make([]string, len(p.Extensions)) z = 0 diff --git a/document.go b/document.go index e4eb001..c41c53b 100644 --- a/document.go +++ b/document.go @@ -182,10 +182,7 @@ func CompareDocuments(original, updated Document) (*model.DocumentChanges, []err if len(errs) > 0 { errors = errs } - if len(errors) > 0 { - return nil, errors - } - return what_changed.CompareOpenAPIDocuments(v3ModelLeft.Model.GoLow(), v3ModelRight.Model.GoLow()), nil + return what_changed.CompareOpenAPIDocuments(v3ModelLeft.Model.GoLow(), v3ModelRight.Model.GoLow()), errors } if original.GetSpecInfo().SpecType == utils.OpenApi2 && updated.GetSpecInfo().SpecType == utils.OpenApi2 { v2ModelLeft, errs := original.BuildV2Model() @@ -196,10 +193,7 @@ func CompareDocuments(original, updated Document) (*model.DocumentChanges, []err if len(errs) > 0 { errors = errs } - if len(errors) > 0 { - return nil, errors - } - return what_changed.CompareSwaggerDocuments(v2ModelLeft.Model.GoLow(), v2ModelRight.Model.GoLow()), nil + return what_changed.CompareSwaggerDocuments(v2ModelLeft.Model.GoLow(), v2ModelRight.Model.GoLow()), errors } return nil, nil }