[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,14 @@
# ModelFile
Must be named `File` for test.
## Properties
Name | Type | Description | Notes
------------ | ------------- | ------------- | -------------
**sourceURI** | **String** | Test capitalization | [optional]

View File

@@ -0,0 +1,13 @@
# ModelList
## Properties
Name | Type | Description | Notes
------------ | ------------- | ------------- | -------------
**_123list** | **String** | | [optional]

View File

@@ -0,0 +1,101 @@
/*
* 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.google.gson.TypeAdapter;
import com.google.gson.annotations.JsonAdapter;
import com.google.gson.annotations.SerializedName;
import com.google.gson.stream.JsonReader;
import com.google.gson.stream.JsonWriter;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import java.io.IOException;
/**
* Must be named `File` for test.
*/
@ApiModel(description = "Must be named `File` for test.")
@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen")
public class ModelFile {
public static final String SERIALIZED_NAME_SOURCE_U_R_I = "sourceURI";
@SerializedName(SERIALIZED_NAME_SOURCE_U_R_I)
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")
public String getSourceURI() {
return sourceURI;
}
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,100 @@
/*
* 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.google.gson.TypeAdapter;
import com.google.gson.annotations.JsonAdapter;
import com.google.gson.annotations.SerializedName;
import com.google.gson.stream.JsonReader;
import com.google.gson.stream.JsonWriter;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import java.io.IOException;
/**
* ModelList
*/
@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen")
public class ModelList {
public static final String SERIALIZED_NAME_123LIST = "123-list";
@SerializedName(SERIALIZED_NAME_123LIST)
private String _123list;
public ModelList() {
}
public ModelList _123list(String _123list) {
this._123list = _123list;
return this;
}
/**
* Get _123list
* @return _123list
**/
@javax.annotation.Nullable
@ApiModelProperty(value = "")
public String get123list() {
return _123list;
}
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,51 @@
/*
* 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.google.gson.TypeAdapter;
import com.google.gson.annotations.JsonAdapter;
import com.google.gson.annotations.SerializedName;
import com.google.gson.stream.JsonReader;
import com.google.gson.stream.JsonWriter;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import java.io.IOException;
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,51 @@
/*
* 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.google.gson.TypeAdapter;
import com.google.gson.annotations.JsonAdapter;
import com.google.gson.annotations.SerializedName;
import com.google.gson.stream.JsonReader;
import com.google.gson.stream.JsonWriter;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import java.io.IOException;
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
}
}