cue def openapi+cue: expect-cue-out -o -

cue def foo.cue -o openapi:-
cmp stdout expect-json-out

cue def foo.cue -o openapi+cue:-
cmp stdout expect-cue-out

cue def foo.cue -o openapi+yaml:-
cmp stdout expect-yaml-out

cue def -p foo openapi: openapi.json
cmp stdout expect-cue

# auto mode
cue def -p foo openapi.json
cmp stdout expect-cue

# cue to openapi
cue def openapi+cue: expect-cue-out -o -
cmp stdout expect-cue2

# combine
cue def -p foo openapi.json openapi2.json
cmp stdout expect-cue3

-- foo.cue --
// Some clever title.

$version: "v1"

Foo :: {
    a: int
    b: uint & <10
}

Bar :: {
    foo: Foo
}

-- openapi.json --
{
    "openapi": "3.0.0",
    "info": {
        "title":   "My OpenAPI",
        "version": "v1alpha1"
    },
    "paths": {},
    "components": {
        "schemas": {
            "Bar": {
                "type": "object",
                "required": [
                    "foo"
                ],
                "properties": {
                    "foo": {
                        "$ref": "#/components/schemas/Foo"
                    }
                }
            },
            "Foo": {
                "type": "object",
                "required": [
                    "a",
                    "b"
                ],
                "properties": {
                    "a": {
                        "type": "integer"
                    },
                    "b": {
                        "type": "integer",
                        "minimum": 0,
                        "exclusiveMaximum": 10
                    }
                }
            }
        }
    }
}
-- openapi2.json --
{
    "openapi": "3.0.0",
    "info": {
        "title":   "My OpenAPI2",
        "version": "v1alpha1"
    },
    "paths": {},
    "components": {
        "schemas": {
            "Baz": {
                "type": "object",
                "required": [
                    "a",
                    "b"
                ],
                "properties": {
                    "a": {
                        "type": "integer"
                    },
                    "b": {
                        "type": "integer",
                        "minimum": 0,
                        "exclusiveMaximum": 10
                    }
                }
            }
        }
    }
}
-- expect-json-out --
{
    "openapi": "3.0.0",
    "info": {
        "title": "Some clever title.",
        "version": "v1"
    },
    "paths": {},
    "components": {
        "schemas": {
            "Bar": {
                "type": "object",
                "required": [
                    "foo"
                ],
                "properties": {
                    "foo": {
                        "$ref": "#/components/schemas/Foo"
                    }
                }
            },
            "Foo": {
                "type": "object",
                "required": [
                    "a",
                    "b"
                ],
                "properties": {
                    "a": {
                        "type": "integer"
                    },
                    "b": {
                        "type": "integer",
                        "minimum": 0,
                        "exclusiveMaximum": 10
                    }
                }
            }
        }
    }
}
-- expect-yaml-out --
openapi: 3.0.0
info:
  title: Some clever title.
  version: v1
paths: {}
components:
  schemas:
    Bar:
      type: object
      required:
      - foo
      properties:
        foo:
          $ref: '#/components/schemas/Foo'
    Foo:
      type: object
      required:
      - a
      - b
      properties:
        a:
          type: integer
        b:
          type: integer
          minimum: 0
          exclusiveMaximum: 10
-- expect-cue-out --
openapi: "3.0.0"
info: {
	title:   "Some clever title."
	version: "v1"
}
paths: {}
components: schemas: {
	Bar: {
		type: "object"
		required: ["foo"]
		properties: foo: $ref: "#/components/schemas/Foo"
	}
	Foo: {
		type: "object"
		required: ["a", "b"]
		properties: {
			a: type: "integer"
			b: {
				type:             "integer"
				minimum:          0
				exclusiveMaximum: 10
			}
		}
	}
}
-- expect-cue --
// My OpenAPI
package foo

info: {
	title:   *"My OpenAPI" | string
	version: *"v1alpha1" | string
}

#Bar: {
	foo: #Foo
	...
}
#Foo: {
	a: int
	b: >=0 & <10
	...
}
-- expect-cue2 --
info: {
	title:   *"Some clever title." | string
	version: *"v1" | string
}
#Bar: {
	foo: #Foo
	...
}
#Foo: {
	a: int
	b: >=0 & <10
	...
}
-- expect-cue2 --
info: {
	title:   *"Some clever title." | string
	version: *"v1" | string
}
#Bar: {
	foo: #Foo
	...
}
#Foo: {
	a: int
	b: >=0 & <10
	...
}
-- expect-cue3 --
// My OpenAPI
package foo

info: {
	title:   string | *_|_
	version: *"v1alpha1" | string
}
#Bar: {
	foo: #Foo
	...
}
#Foo: {
	a: int
	b: >=0 & <10
	...
}
#Baz: {
	a: int
	b: >=0 & <10
	...
}
