diff --git a/test-common/src/main/resources/api.yaml b/test-common/src/main/resources/api.yaml index 326525061..08abafa36 100644 --- a/test-common/src/main/resources/api.yaml +++ b/test-common/src/main/resources/api.yaml @@ -16,6 +16,25 @@ paths: responses: '200': description: OK + content: + application/json: + schema: + title: FlexibleRecord + oneOf: + - type: object + title: FlexibleNonNullRecord + properties: + field1: + type: boolean + - type: object + title: FlexibleNullableRecord + nullable: true + properties: + field1: + type: boolean + + + components: schemas: diff --git a/tests/pom.xml b/tests/pom.xml index f4009f6d6..82446699b 100644 --- a/tests/pom.xml +++ b/tests/pom.xml @@ -21,7 +21,7 @@ ${project.groupId}.o2jrm true - false + true false false java @@ -164,6 +164,7 @@ ${output.default} ${modelPackage.default}.${execution.standard} + ${modelPackage.default}.${execution.standard} ${generateModels.default} ${generateApis.default} ${generateModelTests.default} diff --git a/tests/target/generated-sources/openapi/src/src/gen/java/main/io/github/chrimle/o2jrm/webclient/standard/FlexibleNonNullRecord.java b/tests/target/generated-sources/openapi/src/src/gen/java/main/io/github/chrimle/o2jrm/webclient/standard/FlexibleNonNullRecord.java new file mode 100644 index 000000000..2c44c4b92 --- /dev/null +++ b/tests/target/generated-sources/openapi/src/src/gen/java/main/io/github/chrimle/o2jrm/webclient/standard/FlexibleNonNullRecord.java @@ -0,0 +1,44 @@ +/* + * Example OpenAPI Spec. + * An example OpenAPI-spec to generate example Java records. + * + * The version of the OpenAPI document: 0.0.1 + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + * + * This class was generated using custom mustache templates from + * openapi-to-java-records-mustache-templates. For further information, + * questions, requesting features or reporting issues, please visit: + * https://github.com/Chrimle/openapi-to-java-records-mustache-templates. + * Generated with Version: 3.4.0 + * + */ + +package io.github.chrimle.o2jrm.webclient.standard; + +import java.util.Objects; +import java.util.Arrays; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonTypeName; +import com.fasterxml.jackson.annotation.JsonValue; +import com.fasterxml.jackson.annotation.JsonPropertyOrder; +import com.fasterxml.jackson.annotation.JsonTypeName; + +/** + * FlexibleNonNullRecord. + * + * @param field1 Boolean. + */ +public record FlexibleNonNullRecord( + Boolean field1) { + + @JsonCreator + public FlexibleNonNullRecord( + final Boolean field1) { + this.field1 = field1; + } +} diff --git a/tests/target/generated-sources/openapi/src/src/gen/java/main/io/github/chrimle/o2jrm/webclient/standard/FlexibleNullableRecord.java b/tests/target/generated-sources/openapi/src/src/gen/java/main/io/github/chrimle/o2jrm/webclient/standard/FlexibleNullableRecord.java new file mode 100644 index 000000000..9c19422fd --- /dev/null +++ b/tests/target/generated-sources/openapi/src/src/gen/java/main/io/github/chrimle/o2jrm/webclient/standard/FlexibleNullableRecord.java @@ -0,0 +1,44 @@ +/* + * Example OpenAPI Spec. + * An example OpenAPI-spec to generate example Java records. + * + * The version of the OpenAPI document: 0.0.1 + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + * + * This class was generated using custom mustache templates from + * openapi-to-java-records-mustache-templates. For further information, + * questions, requesting features or reporting issues, please visit: + * https://github.com/Chrimle/openapi-to-java-records-mustache-templates. + * Generated with Version: 3.4.0 + * + */ + +package io.github.chrimle.o2jrm.webclient.standard; + +import java.util.Objects; +import java.util.Arrays; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonTypeName; +import com.fasterxml.jackson.annotation.JsonValue; +import com.fasterxml.jackson.annotation.JsonPropertyOrder; +import com.fasterxml.jackson.annotation.JsonTypeName; + +/** + * FlexibleNullableRecord. + * + * @param field1 Boolean. + */ +public record FlexibleNullableRecord( + Boolean field1) { + + @JsonCreator + public FlexibleNullableRecord( + final Boolean field1) { + this.field1 = field1; + } +} diff --git a/tests/target/generated-sources/openapi/src/src/gen/java/main/io/github/chrimle/o2jrm/webclient/standard/FlexibleRecord.java b/tests/target/generated-sources/openapi/src/src/gen/java/main/io/github/chrimle/o2jrm/webclient/standard/FlexibleRecord.java new file mode 100644 index 000000000..fc5834da8 --- /dev/null +++ b/tests/target/generated-sources/openapi/src/src/gen/java/main/io/github/chrimle/o2jrm/webclient/standard/FlexibleRecord.java @@ -0,0 +1,46 @@ +/* + * Example OpenAPI Spec. + * An example OpenAPI-spec to generate example Java records. + * + * The version of the OpenAPI document: 0.0.1 + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + * + * This class was generated using custom mustache templates from + * openapi-to-java-records-mustache-templates. For further information, + * questions, requesting features or reporting issues, please visit: + * https://github.com/Chrimle/openapi-to-java-records-mustache-templates. + * Generated with Version: 3.4.0 + * + */ + +package io.github.chrimle.o2jrm.webclient.standard; + +import java.util.Objects; +import java.util.Arrays; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonTypeName; +import com.fasterxml.jackson.annotation.JsonValue; +import io.github.chrimle.o2jrm.webclient.standard.FlexibleNonNullRecord; +import io.github.chrimle.o2jrm.webclient.standard.FlexibleNullableRecord; +import com.fasterxml.jackson.annotation.JsonPropertyOrder; +import com.fasterxml.jackson.annotation.JsonTypeName; + +/** + * FlexibleRecord. + * + * @param field1 Boolean. + */ +public record FlexibleRecord( + Boolean field1) { + + @JsonCreator + public FlexibleRecord( + final Boolean field1) { + this.field1 = field1; + } +}