[java][okhttp-gson-nextgen] better oneOf implementation (#11146)

* add validJsonObject method

* add check for null

* fix list model generation

* fix optional fields validation

* add tests

* fix variable naming

* update tests

* add fromJson in oneOf, add tests

* convert JSON to static

* remove trailing space

* add fromString methods to all models

* add toJson, fix anyOf template

* remove workarounds

* undo changes to tests

* skip file schema test

* add new file
This commit is contained in:
William Cheng
2021-12-18 23:22:55 +08:00
committed by GitHub
parent d65bf8d1a6
commit b72eba90cd
247 changed files with 16330 additions and 1135 deletions

View File

@@ -0,0 +1,109 @@
/*
* OpenAPI Petstore
* This spec is mainly for testing Petstore server and contains fake endpoints, models. Please do not use this for any other purpose. Special characters: \" \\
*
* The version of the OpenAPI document: 1.0.0
*
*
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
* https://openapi-generator.tech
* Do not edit the class manually.
*/
package org.openapitools.client.model;
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.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import com.fasterxml.jackson.annotation.JsonPropertyOrder;
import com.fasterxml.jackson.annotation.JsonTypeName;
/**
* Must be named `File` for test.
*/
@ApiModel(description = "Must be named `File` for test.")
@JsonPropertyOrder({
ModelFile.JSON_PROPERTY_SOURCE_U_R_I
})
@JsonTypeName("File")
@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen")
public class ModelFile {
public static final String JSON_PROPERTY_SOURCE_U_R_I = "sourceURI";
private String sourceURI;
public ModelFile() {
}
public ModelFile sourceURI(String sourceURI) {
this.sourceURI = sourceURI;
return this;
}
/**
* Test capitalization
* @return sourceURI
**/
@javax.annotation.Nullable
@ApiModelProperty(value = "Test capitalization")
@JsonProperty(JSON_PROPERTY_SOURCE_U_R_I)
@JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
public String getSourceURI() {
return sourceURI;
}
@JsonProperty(JSON_PROPERTY_SOURCE_U_R_I)
@JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
public void setSourceURI(String sourceURI) {
this.sourceURI = sourceURI;
}
@Override
public boolean equals(Object o) {
if (this == o) {
return true;
}
if (o == null || getClass() != o.getClass()) {
return false;
}
ModelFile _file = (ModelFile) o;
return Objects.equals(this.sourceURI, _file.sourceURI);
}
@Override
public int hashCode() {
return Objects.hash(sourceURI);
}
@Override
public String toString() {
StringBuilder sb = new StringBuilder();
sb.append("class ModelFile {\n");
sb.append(" sourceURI: ").append(toIndentedString(sourceURI)).append("\n");
sb.append("}");
return sb.toString();
}
/**
* Convert the given object to string with each line indented by 4 spaces
* (except the first line).
*/
private String toIndentedString(Object o) {
if (o == null) {
return "null";
}
return o.toString().replace("\n", "\n ");
}
}

View File

@@ -0,0 +1,108 @@
/*
* OpenAPI Petstore
* This spec is mainly for testing Petstore server and contains fake endpoints, models. Please do not use this for any other purpose. Special characters: \" \\
*
* The version of the OpenAPI document: 1.0.0
*
*
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
* https://openapi-generator.tech
* Do not edit the class manually.
*/
package org.openapitools.client.model;
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.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import com.fasterxml.jackson.annotation.JsonPropertyOrder;
import com.fasterxml.jackson.annotation.JsonTypeName;
/**
* ModelList
*/
@JsonPropertyOrder({
ModelList.JSON_PROPERTY_123LIST
})
@JsonTypeName("List")
@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen")
public class ModelList {
public static final String JSON_PROPERTY_123LIST = "123-list";
private String _123list;
public ModelList() {
}
public ModelList _123list(String _123list) {
this._123list = _123list;
return this;
}
/**
* Get _123list
* @return _123list
**/
@javax.annotation.Nullable
@ApiModelProperty(value = "")
@JsonProperty(JSON_PROPERTY_123LIST)
@JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
public String get123list() {
return _123list;
}
@JsonProperty(JSON_PROPERTY_123LIST)
@JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
public void set123list(String _123list) {
this._123list = _123list;
}
@Override
public boolean equals(Object o) {
if (this == o) {
return true;
}
if (o == null || getClass() != o.getClass()) {
return false;
}
ModelList _list = (ModelList) o;
return Objects.equals(this._123list, _list._123list);
}
@Override
public int hashCode() {
return Objects.hash(_123list);
}
@Override
public String toString() {
StringBuilder sb = new StringBuilder();
sb.append("class ModelList {\n");
sb.append(" _123list: ").append(toIndentedString(_123list)).append("\n");
sb.append("}");
return sb.toString();
}
/**
* Convert the given object to string with each line indented by 4 spaces
* (except the first line).
*/
private String toIndentedString(Object o) {
if (o == null) {
return "null";
}
return o.toString().replace("\n", "\n ");
}
}

View File

@@ -0,0 +1,50 @@
/*
* OpenAPI Petstore
* This spec is mainly for testing Petstore server and contains fake endpoints, models. Please do not use this for any other purpose. Special characters: \" \\
*
* The version of the OpenAPI document: 1.0.0
*
*
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
* https://openapi-generator.tech
* Do not edit the class manually.
*/
package org.openapitools.client.model;
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.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import org.junit.Assert;
import org.junit.Ignore;
import org.junit.Test;
/**
* Model tests for ModelFile
*/
public class ModelFileTest {
private final ModelFile model = new ModelFile();
/**
* Model tests for ModelFile
*/
@Test
public void testModelFile() {
// TODO: test ModelFile
}
/**
* Test the property 'sourceURI'
*/
@Test
public void sourceURITest() {
// TODO: test sourceURI
}
}

View File

@@ -0,0 +1,50 @@
/*
* OpenAPI Petstore
* This spec is mainly for testing Petstore server and contains fake endpoints, models. Please do not use this for any other purpose. Special characters: \" \\
*
* The version of the OpenAPI document: 1.0.0
*
*
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
* https://openapi-generator.tech
* Do not edit the class manually.
*/
package org.openapitools.client.model;
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.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import org.junit.Assert;
import org.junit.Ignore;
import org.junit.Test;
/**
* Model tests for ModelList
*/
public class ModelListTest {
private final ModelList model = new ModelList();
/**
* Model tests for ModelList
*/
@Test
public void testModelList() {
// TODO: test ModelList
}
/**
* Test the property '_123list'
*/
@Test
public void _123listTest() {
// TODO: test _123list
}
}