From 6a05ca88e18e72492b42d4880b00986b55b78c22 Mon Sep 17 00:00:00 2001 From: spinillos Date: Mon, 6 Feb 2023 13:20:01 +0100 Subject: [PATCH] Fix pointers equality in TypeDefinitionsEquivalent function --- pkg/codegen/utils.go | 3 ++- pkg/codegen/utils_test.go | 10 ++++++++++ 2 files changed, 12 insertions(+), 1 deletion(-) diff --git a/pkg/codegen/utils.go b/pkg/codegen/utils.go index 7526ee3bf1..ec56e58908 100644 --- a/pkg/codegen/utils.go +++ b/pkg/codegen/utils.go @@ -18,6 +18,7 @@ import ( "fmt" "go/token" "net/url" + "reflect" "regexp" "sort" "strconv" @@ -864,5 +865,5 @@ func TypeDefinitionsEquivalent(t1, t2 TypeDefinition) bool { if t1.TypeName != t2.TypeName { return false } - return t1.Schema.OAPISchema == t2.Schema.OAPISchema + return reflect.DeepEqual(t1.Schema.OAPISchema, t2.Schema.OAPISchema) } diff --git a/pkg/codegen/utils_test.go b/pkg/codegen/utils_test.go index 518e287f5e..dad8c280ee 100644 --- a/pkg/codegen/utils_test.go +++ b/pkg/codegen/utils_test.go @@ -432,3 +432,13 @@ func TestSchemaNameToTypeName(t *testing.T) { assert.Equal(t, want, SchemaNameToTypeName(in)) } } + +func TestTypeDefinitionsEquivalent(t *testing.T) { + def1 := TypeDefinition{TypeName: "name", Schema: Schema{ + OAPISchema: &openapi3.Schema{}, + }} + def2 := TypeDefinition{TypeName: "name", Schema: Schema{ + OAPISchema: &openapi3.Schema{}, + }} + assert.True(t, TypeDefinitionsEquivalent(def1, def2)) +}