File: //opt/go/pkg/mod/github.com/go-openapi/
[email protected]/fixtures/oaigen/fixture-oaigen.yaml
---
swagger: '2.0'
info:
version: '0.1.0'
title: reference analysis
parameters:
someParam:
name: some
in: query
type: string
bodyParam:
name: some
in: body
schema:
# expect this $ref to be kept
$ref: '#/definitions/myBody'
responses:
notFound:
description: 'Not Found'
schema:
$ref: '#/definitions/notFound'
paths:
/some/where:
parameters:
- $ref: '#/parameters/someParam'
get:
parameters:
- $ref: '#/parameters/bodyParam'
- name: other
in: query
type: string
responses:
default:
$ref: '#/responses/notFound'
404:
description: ok
schema:
$ref: '#/definitions/myResponse'
304:
description: ok
schema:
$ref: 'transitive-1.yaml#/definitions/transitive-1.1'
204:
description: ok
schema:
$ref: '#/definitions/uniqueName1'
200:
description: 'RecordHolder'
schema:
type: object
properties:
prop0:
$ref: '#/definitions/myBody'
206:
description: ok
schema:
$ref: 'transitive-1.yaml#/definitions/a'
205:
description: ok
schema:
$ref: 'transitive-1.yaml#/definitions/b'
# arbitrary json pointers
post:
responses:
200:
description: ok
schema:
# this one gets resolved
$ref: 'transitive-2.yaml#/definitions/a/properties/b'
204:
description: ok
schema:
# this one gets resolved
$ref: 'transitive-1.yaml#/definitions/c/properties/d'
default:
description: default
schema:
# this one remains (same file)
$ref: '#/definitions/myDefaultResponse/properties/zzz'
/some/where/else:
get:
responses:
default:
description: default
schema:
$ref: '#/definitions/notFound'
/yet/again/some/where:
get:
responses:
default:
description: default
schema:
$ref: 'transitive-1.yaml#/somewhere'
/with/slice/container:
get:
responses:
default:
description: default
schema:
allOf:
- $ref: '#/definitions/uniqueName3'
- $ref: 'transitive-1.yaml#/definitions/uniqueName3'
/with/tuple/container:
get:
responses:
default:
description: default
schema:
type: array
items:
- $ref: '#/definitions/uniqueName3'
- $ref: 'transitive-1.yaml#/definitions/uniqueName3'
/with/tuple/conflict:
get:
responses:
default:
description: default
schema:
type: array
items:
- $ref: 'transitive-1.yaml#/definitions/uniqueName4'
- $ref: 'transitive-2.yaml#/definitions/uniqueName4'
/with/boolable/container:
get:
responses:
default:
description: default
schema:
type: object
additionalProperties:
$ref: 'transitive-1.yaml#/definitions/uniqueName5'
definitions:
myDefaultResponse:
type: object
properties:
zzz:
type: integer
myBody:
type: object
properties:
prop1:
type: integer
aA:
$ref: '#/definitions/aA'
aA:
type: string
format: date
bB:
type: string
format: date-time
myResponse:
type: object
properties:
prop2:
type: integer
notFound:
type: array
items:
type: integer
uniqueName1:
# expect this to be expanded after OAIGen stripping
$ref: 'transitive-1.yaml#/definitions/uniqueName1'
notUniqueName2:
# this one prevents OAIGen stripping
$ref: 'transitive-1.yaml#/definitions/uniqueName2'
uniqueName2:
$ref: 'transitive-1.yaml#/definitions/uniqueName2'
uniqueName3:
type: object
properties:
prop7:
type: integer
uniqueName5:
type: object
properties:
prop10:
type: integer