-
Run the
Main.kt
file and observe the output:./gradlew run
-
Execute the
ReferenceTest.kt
file and observe the assertions:./gradlew test
When using OpenAPI Specification where the operations of an endpoint are being referenced using another file, the examples are parsed as strings rather than objects in the absence of a reference.
As observed in the image above, the only distinction is that the operations under /products
are referenced in V1
,
whereas no such reference exists in V2
. When flattened out both V1
and V2
are identical. However,
the example value and example type do not match when these specifications are parsed.
The examples in both V1
and V2
should be parsed consistently as JSON Object.
In V1
, where the operations are referenced:
V1 Example Value: {id=1, name=XYZ Product, inventory=100}
V1 Example Value Type: class java.util.LinkedHashMap
In V2
, where no reference exists:
V2 Example Value: {"id":"1","name":"XYZ Product","inventory":100}
V2 Example Value Type: class com.fasterxml.jackson.databind.node.ObjectNode