diff --git a/renderer/mock_generator_test.go b/renderer/mock_generator_test.go index a42186d3..fe1700d3 100644 --- a/renderer/mock_generator_test.go +++ b/renderer/mock_generator_test.go @@ -6,6 +6,9 @@ package renderer import ( "context" "encoding/json" + "strings" + "testing" + "github.com/pb33f/libopenapi/datamodel/high/base" "github.com/pb33f/libopenapi/datamodel/low" lowbase "github.com/pb33f/libopenapi/datamodel/low/base" @@ -14,8 +17,6 @@ import ( "github.com/stretchr/testify/assert" "github.com/stretchr/testify/require" "gopkg.in/yaml.v3" - "strings" - "testing" ) type fakeMockable struct { @@ -450,3 +451,39 @@ properties: assert.Equal(t, `{"active":true,"balance":99.99,"id":123,"name":"John Doe","tags":["tag1","tag2","tag3"]}`, string(mock)) } + +func TestMockGenerator_GenerateExamplesForRequiredProperties(t *testing.T) { + + yml := `type: object +required: + - id + - name +properties: + id: + type: integer + example: 123 + name: + type: string + example: "John Doe" + active: + type: boolean + example: true + balance: + type: number + format: float + example: 99.99 + tags: + type: array + items: + type: string + example: ["tag1", "tag2", "tag3"] +` + + fake := createFakeMock(yml, nil, nil) + mg := NewMockGenerator(JSON) + + mock, err := mg.GenerateMock(fake, "") + require.NoError(t, err) + + assert.Equal(t, `{"id":123,"name":"John Doe"}`, string(mock)) +}