forked from loafle/openapi-generator-original
[js] fix boolean in oneOf, add tests (#14380)
This commit is contained in:
parent
c514dc3c1b
commit
b22bf0a071
@ -111,59 +111,67 @@ class {{classname}} {
|
||||
}
|
||||
{{/items.isString}}
|
||||
{{#items.isNumber}}
|
||||
// validate array of string
|
||||
// validate array of number
|
||||
for (const item of instance) {
|
||||
if (!(typeof instance === 'number' && instance % 1 != 0)) {
|
||||
throw new Error("Invalid array items. Must be number. Input: " + JSON.stringify(instance));
|
||||
}
|
||||
}
|
||||
{{/items.isNumber}}
|
||||
{{#items.isBoolean}}
|
||||
// validate array of boolean
|
||||
for (const item of instance) {
|
||||
if (!(typeof instance === 'boolean')) {
|
||||
throw new Error("Invalid array items. Must be boolean. Input: " + JSON.stringify(instance));
|
||||
}
|
||||
}
|
||||
{{/items.isBoolean}}
|
||||
{{/isArray}}
|
||||
{{^isArray}}
|
||||
{{#isInteger}}
|
||||
// validate array of integer
|
||||
// validate integer
|
||||
if (!(typeof instance === 'number' && instance % 1 === 0)) {
|
||||
throw new Error("Invalid array items. Must be integer. Input: " + JSON.stringify(instance));
|
||||
throw new Error("Invalid value. Must be integer. Input: " + JSON.stringify(instance));
|
||||
}
|
||||
{{#maximum}}
|
||||
{{#minimum}}
|
||||
if (instance > {{maximum}} || instance < {{minimum}}) {
|
||||
throw new Error("Invalid integer value in an array items. Max.: {{maximum}}. Min.: {{minimum}}. Input: " + JSON.stringify(instance));
|
||||
throw new Error("Invalid integer value. Max.: {{maximum}}. Min.: {{minimum}}. Input: " + JSON.stringify(instance));
|
||||
}
|
||||
{{/minimum}}
|
||||
{{^minimum}}
|
||||
if (instance > {{maximum}}) {
|
||||
throw new Error("Invalid integer value in an array items. Max.: {{maximum}}. Input: " + JSON.stringify(instance));
|
||||
throw new Error("Invalid integer value. Max.: {{maximum}}. Input: " + JSON.stringify(instance));
|
||||
}
|
||||
{{/minimum}}
|
||||
{{/maximum}}
|
||||
{{^maximum}}
|
||||
{{#minimum}}
|
||||
if (instance < {{minimum}}) {
|
||||
throw new Error("Invalid integer value in an array items. Min.: {{minimum}}. Input: " + JSON.stringify(instance));
|
||||
throw new Error("Invalid integer value. Min.: {{minimum}}. Input: " + JSON.stringify(instance));
|
||||
}
|
||||
{{/minimum}}
|
||||
{{/maximum}}
|
||||
{{/isInteger}}
|
||||
{{#isString}}
|
||||
// validate array of string
|
||||
// validate string
|
||||
if (!(typeof instance === 'string')) {
|
||||
throw new Error("Invalid input. Must be string. Input: " + JSON.stringify(instance));
|
||||
throw new Error("Invalid value. Must be string. Input: " + JSON.stringify(instance));
|
||||
}
|
||||
{{#pattern}}
|
||||
if (!{{{pattern}}}.test(instance)) {
|
||||
throw new Error("Invalid string value in an array items. Must conform to {{{.}}}. Input: " + JSON.stringify(instance));
|
||||
throw new Error("Invalid string value. Must conform to {{{.}}}. Input: " + JSON.stringify(instance));
|
||||
}
|
||||
{{/pattern}}
|
||||
{{#minLength}}
|
||||
{{#maxLength}}
|
||||
if (instance.length > {{maxLength}} && instance.length < {{minLength}}) {
|
||||
throw new Error("Invalid string value in an array items. Max. length: {{{maxLength}}}. Min. length: {{{minLength}}}. Input: " + JSON.stringify(instance));
|
||||
throw new Error("Invalid string value. Max. length: {{{maxLength}}}. Min. length: {{{minLength}}}. Input: " + JSON.stringify(instance));
|
||||
}
|
||||
{{/maxLength}}
|
||||
{{^maxLength}}
|
||||
if (instance.length < {{minLength}}) {
|
||||
throw new Error("Invalid string value in an array items. Min. length: {{{minLength}}}. Input: " + instance);
|
||||
throw new Error("Invalid string value. Min. length: {{{minLength}}}. Input: " + instance);
|
||||
}
|
||||
{{/maxLength}}
|
||||
{{/minLength}}
|
||||
@ -176,11 +184,17 @@ class {{classname}} {
|
||||
{{/minLength}}
|
||||
{{/isString}}
|
||||
{{#isNumber}}
|
||||
// validate array of string
|
||||
// validate number
|
||||
if (!(typeof instance === 'number' && instance % 1 != 0)) {
|
||||
throw new Error("Invalid array items. Must be number. Input: " + JSON.stringify(instance));
|
||||
throw new Error("Invalid value. Must be number. Input: " + JSON.stringify(instance));
|
||||
}
|
||||
{{/isNumber}}
|
||||
{{#isBoolean}}
|
||||
// validate boolean
|
||||
if (!(typeof instance === 'boolean')) {
|
||||
throw new Error("Invalid value. Must be boolean. Input: " + JSON.stringify(instance));
|
||||
}
|
||||
{{/isBoolean}}
|
||||
{{/isArray}}
|
||||
this.actualInstance = instance;
|
||||
{{/isPrimitiveType}}
|
||||
|
@ -1977,3 +1977,8 @@ components:
|
||||
- $ref: '#/components/schemas/RgbColor'
|
||||
- $ref: '#/components/schemas/RgbaColor'
|
||||
- $ref: '#/components/schemas/HexColor'
|
||||
StringOrBoolean:
|
||||
description: String or boolean
|
||||
oneOf:
|
||||
- type: string
|
||||
- type: boolean
|
||||
|
@ -58,6 +58,7 @@ docs/ReadOnlyFirst.md
|
||||
docs/Return.md
|
||||
docs/SpecialModelName.md
|
||||
docs/StoreApi.md
|
||||
docs/StringOrBoolean.md
|
||||
docs/Tag.md
|
||||
docs/User.md
|
||||
docs/UserApi.md
|
||||
@ -123,5 +124,6 @@ src/model/Pig.js
|
||||
src/model/ReadOnlyFirst.js
|
||||
src/model/Return.js
|
||||
src/model/SpecialModelName.js
|
||||
src/model/StringOrBoolean.js
|
||||
src/model/Tag.js
|
||||
src/model/User.js
|
||||
|
@ -215,6 +215,7 @@ Class | Method | HTTP request | Description
|
||||
- [OpenApiPetstore.ReadOnlyFirst](docs/ReadOnlyFirst.md)
|
||||
- [OpenApiPetstore.Return](docs/Return.md)
|
||||
- [OpenApiPetstore.SpecialModelName](docs/SpecialModelName.md)
|
||||
- [OpenApiPetstore.StringOrBoolean](docs/StringOrBoolean.md)
|
||||
- [OpenApiPetstore.Tag](docs/Tag.md)
|
||||
- [OpenApiPetstore.User](docs/User.md)
|
||||
|
||||
|
@ -0,0 +1,8 @@
|
||||
# OpenApiPetstore.StringOrBoolean
|
||||
|
||||
## Properties
|
||||
|
||||
Name | Type | Description | Notes
|
||||
------------ | ------------- | ------------- | -------------
|
||||
|
||||
|
@ -63,6 +63,7 @@ import Pig from './model/Pig';
|
||||
import ReadOnlyFirst from './model/ReadOnlyFirst';
|
||||
import Return from './model/Return';
|
||||
import SpecialModelName from './model/SpecialModelName';
|
||||
import StringOrBoolean from './model/StringOrBoolean';
|
||||
import Tag from './model/Tag';
|
||||
import User from './model/User';
|
||||
import AnotherFakeApi from './api/AnotherFakeApi';
|
||||
@ -412,6 +413,12 @@ export {
|
||||
*/
|
||||
SpecialModelName,
|
||||
|
||||
/**
|
||||
* The StringOrBoolean model constructor.
|
||||
* @property {module:model/StringOrBoolean}
|
||||
*/
|
||||
StringOrBoolean,
|
||||
|
||||
/**
|
||||
* The Tag model constructor.
|
||||
* @property {module:model/Tag}
|
||||
|
@ -84,15 +84,15 @@ class Color {
|
||||
|
||||
// Hex color string, such as #00FF00.
|
||||
try {
|
||||
// validate array of string
|
||||
// validate string
|
||||
if (!(typeof instance === 'string')) {
|
||||
throw new Error("Invalid input. Must be string. Input: " + JSON.stringify(instance));
|
||||
throw new Error("Invalid value. Must be string. Input: " + JSON.stringify(instance));
|
||||
}
|
||||
if (!/^#(?:[0-9a-fA-F]{3}){1,2}$/.test(instance)) {
|
||||
throw new Error("Invalid string value in an array items. Must conform to /^#(?:[0-9a-fA-F]{3}){1,2}$/. Input: " + JSON.stringify(instance));
|
||||
throw new Error("Invalid string value. Must conform to /^#(?:[0-9a-fA-F]{3}){1,2}$/. Input: " + JSON.stringify(instance));
|
||||
}
|
||||
if (instance.length > 7 && instance.length < 7) {
|
||||
throw new Error("Invalid string value in an array items. Max. length: 7. Min. length: 7. Input: " + JSON.stringify(instance));
|
||||
throw new Error("Invalid string value. Max. length: 7. Min. length: 7. Input: " + JSON.stringify(instance));
|
||||
}
|
||||
this.actualInstance = instance;
|
||||
match++;
|
||||
|
@ -0,0 +1,119 @@
|
||||
/**
|
||||
* 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.
|
||||
*
|
||||
*/
|
||||
|
||||
import ApiClient from '../ApiClient';
|
||||
|
||||
/**
|
||||
* The StringOrBoolean model module.
|
||||
* @module model/StringOrBoolean
|
||||
* @version 1.0.0
|
||||
*/
|
||||
class StringOrBoolean {
|
||||
/**
|
||||
* Constructs a new <code>StringOrBoolean</code>.
|
||||
* String or boolean
|
||||
* @alias module:model/StringOrBoolean
|
||||
* @param {(module:model/Boolean|module:model/String)} instance The actual instance to initialize StringOrBoolean.
|
||||
*/
|
||||
constructor(instance = null) {
|
||||
if (instance === null) {
|
||||
this.actualInstance = null;
|
||||
return;
|
||||
}
|
||||
var match = 0;
|
||||
var errorMessages = [];
|
||||
try {
|
||||
// validate string
|
||||
if (!(typeof instance === 'string')) {
|
||||
throw new Error("Invalid value. Must be string. Input: " + JSON.stringify(instance));
|
||||
}
|
||||
this.actualInstance = instance;
|
||||
match++;
|
||||
} catch(err) {
|
||||
// json data failed to deserialize into String
|
||||
errorMessages.push("Failed to construct String: " + err)
|
||||
}
|
||||
|
||||
try {
|
||||
// validate boolean
|
||||
if (!(typeof instance === 'boolean')) {
|
||||
throw new Error("Invalid value. Must be boolean. Input: " + JSON.stringify(instance));
|
||||
}
|
||||
this.actualInstance = instance;
|
||||
match++;
|
||||
} catch(err) {
|
||||
// json data failed to deserialize into Boolean
|
||||
errorMessages.push("Failed to construct Boolean: " + err)
|
||||
}
|
||||
|
||||
if (match > 1) {
|
||||
throw new Error("Multiple matches found constructing `StringOrBoolean` with oneOf schemas Boolean, String. Input: " + JSON.stringify(instance));
|
||||
} else if (match === 0) {
|
||||
this.actualInstance = null; // clear the actual instance in case there are multiple matches
|
||||
throw new Error("No match found constructing `StringOrBoolean` with oneOf schemas Boolean, String. Details: " +
|
||||
errorMessages.join(", "));
|
||||
} else { // only 1 match
|
||||
// the input is valid
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Constructs a <code>StringOrBoolean</code> from a plain JavaScript object, optionally creating a new instance.
|
||||
* Copies all relevant properties from <code>data</code> to <code>obj</code> if supplied or a new instance if not.
|
||||
* @param {Object} data The plain JavaScript object bearing properties of interest.
|
||||
* @param {module:model/StringOrBoolean} obj Optional instance to populate.
|
||||
* @return {module:model/StringOrBoolean} The populated <code>StringOrBoolean</code> instance.
|
||||
*/
|
||||
static constructFromObject(data, obj) {
|
||||
return new StringOrBoolean(data);
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets the actual instance, which can be <code>Boolean</code>, <code>String</code>.
|
||||
* @return {(module:model/Boolean|module:model/String)} The actual instance.
|
||||
*/
|
||||
getActualInstance() {
|
||||
return this.actualInstance;
|
||||
}
|
||||
|
||||
/**
|
||||
* Sets the actual instance, which can be <code>Boolean</code>, <code>String</code>.
|
||||
* @param {(module:model/Boolean|module:model/String)} obj The actual instance.
|
||||
*/
|
||||
setActualInstance(obj) {
|
||||
this.actualInstance = StringOrBoolean.constructFromObject(obj).getActualInstance();
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns the JSON representation of the actual instance.
|
||||
* @return {string}
|
||||
*/
|
||||
toJSON = function(){
|
||||
return this.getActualInstance();
|
||||
}
|
||||
|
||||
/**
|
||||
* Create an instance of StringOrBoolean from a JSON string.
|
||||
* @param {string} json_string JSON string.
|
||||
* @return {module:model/StringOrBoolean} An instance of StringOrBoolean.
|
||||
*/
|
||||
static fromJSON = function(json_string){
|
||||
return StringOrBoolean.constructFromObject(JSON.parse(json_string));
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
StringOrBoolean.OneOf = ["Boolean", "String"];
|
||||
|
||||
export default StringOrBoolean;
|
||||
|
@ -0,0 +1,59 @@
|
||||
/**
|
||||
* 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.
|
||||
*
|
||||
*/
|
||||
|
||||
(function(root, factory) {
|
||||
if (typeof define === 'function' && define.amd) {
|
||||
// AMD.
|
||||
define(['expect.js', process.cwd()+'/src/index'], factory);
|
||||
} else if (typeof module === 'object' && module.exports) {
|
||||
// CommonJS-like environments that support module.exports, like Node.
|
||||
factory(require('expect.js'), require(process.cwd()+'/src/index'));
|
||||
} else {
|
||||
// Browser globals (root is window)
|
||||
factory(root.expect, root.OpenApiPetstore);
|
||||
}
|
||||
}(this, function(expect, OpenApiPetstore) {
|
||||
'use strict';
|
||||
|
||||
var instance;
|
||||
|
||||
beforeEach(function() {
|
||||
instance = new OpenApiPetstore.StringOrBoolean();
|
||||
});
|
||||
|
||||
var getProperty = function(object, getter, property) {
|
||||
// Use getter method if present; otherwise, get the property directly.
|
||||
if (typeof object[getter] === 'function')
|
||||
return object[getter]();
|
||||
else
|
||||
return object[property];
|
||||
}
|
||||
|
||||
var setProperty = function(object, setter, property, value) {
|
||||
// Use setter method if present; otherwise, set the property directly.
|
||||
if (typeof object[setter] === 'function')
|
||||
object[setter](value);
|
||||
else
|
||||
object[property] = value;
|
||||
}
|
||||
|
||||
describe('StringOrBoolean', function() {
|
||||
it('should create an instance of StringOrBoolean', function() {
|
||||
// uncomment below and update the code to test StringOrBoolean
|
||||
//var instance = new OpenApiPetstore.StringOrBoolean();
|
||||
//expect(instance).to.be.a(OpenApiPetstore.StringOrBoolean);
|
||||
});
|
||||
|
||||
});
|
||||
|
||||
}));
|
@ -58,6 +58,7 @@ docs/ReadOnlyFirst.md
|
||||
docs/Return.md
|
||||
docs/SpecialModelName.md
|
||||
docs/StoreApi.md
|
||||
docs/StringOrBoolean.md
|
||||
docs/Tag.md
|
||||
docs/User.md
|
||||
docs/UserApi.md
|
||||
@ -123,5 +124,6 @@ src/model/Pig.js
|
||||
src/model/ReadOnlyFirst.js
|
||||
src/model/Return.js
|
||||
src/model/SpecialModelName.js
|
||||
src/model/StringOrBoolean.js
|
||||
src/model/Tag.js
|
||||
src/model/User.js
|
||||
|
@ -215,6 +215,7 @@ Class | Method | HTTP request | Description
|
||||
- [OpenApiPetstore.ReadOnlyFirst](docs/ReadOnlyFirst.md)
|
||||
- [OpenApiPetstore.Return](docs/Return.md)
|
||||
- [OpenApiPetstore.SpecialModelName](docs/SpecialModelName.md)
|
||||
- [OpenApiPetstore.StringOrBoolean](docs/StringOrBoolean.md)
|
||||
- [OpenApiPetstore.Tag](docs/Tag.md)
|
||||
- [OpenApiPetstore.User](docs/User.md)
|
||||
|
||||
|
@ -0,0 +1,8 @@
|
||||
# OpenApiPetstore.StringOrBoolean
|
||||
|
||||
## Properties
|
||||
|
||||
Name | Type | Description | Notes
|
||||
------------ | ------------- | ------------- | -------------
|
||||
|
||||
|
@ -63,6 +63,7 @@ import Pig from './model/Pig';
|
||||
import ReadOnlyFirst from './model/ReadOnlyFirst';
|
||||
import Return from './model/Return';
|
||||
import SpecialModelName from './model/SpecialModelName';
|
||||
import StringOrBoolean from './model/StringOrBoolean';
|
||||
import Tag from './model/Tag';
|
||||
import User from './model/User';
|
||||
import AnotherFakeApi from './api/AnotherFakeApi';
|
||||
@ -412,6 +413,12 @@ export {
|
||||
*/
|
||||
SpecialModelName,
|
||||
|
||||
/**
|
||||
* The StringOrBoolean model constructor.
|
||||
* @property {module:model/StringOrBoolean}
|
||||
*/
|
||||
StringOrBoolean,
|
||||
|
||||
/**
|
||||
* The Tag model constructor.
|
||||
* @property {module:model/Tag}
|
||||
|
@ -84,15 +84,15 @@ class Color {
|
||||
|
||||
// Hex color string, such as #00FF00.
|
||||
try {
|
||||
// validate array of string
|
||||
// validate string
|
||||
if (!(typeof instance === 'string')) {
|
||||
throw new Error("Invalid input. Must be string. Input: " + JSON.stringify(instance));
|
||||
throw new Error("Invalid value. Must be string. Input: " + JSON.stringify(instance));
|
||||
}
|
||||
if (!/^#(?:[0-9a-fA-F]{3}){1,2}$/.test(instance)) {
|
||||
throw new Error("Invalid string value in an array items. Must conform to /^#(?:[0-9a-fA-F]{3}){1,2}$/. Input: " + JSON.stringify(instance));
|
||||
throw new Error("Invalid string value. Must conform to /^#(?:[0-9a-fA-F]{3}){1,2}$/. Input: " + JSON.stringify(instance));
|
||||
}
|
||||
if (instance.length > 7 && instance.length < 7) {
|
||||
throw new Error("Invalid string value in an array items. Max. length: 7. Min. length: 7. Input: " + JSON.stringify(instance));
|
||||
throw new Error("Invalid string value. Max. length: 7. Min. length: 7. Input: " + JSON.stringify(instance));
|
||||
}
|
||||
this.actualInstance = instance;
|
||||
match++;
|
||||
|
@ -0,0 +1,119 @@
|
||||
/**
|
||||
* 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.
|
||||
*
|
||||
*/
|
||||
|
||||
import ApiClient from '../ApiClient';
|
||||
|
||||
/**
|
||||
* The StringOrBoolean model module.
|
||||
* @module model/StringOrBoolean
|
||||
* @version 1.0.0
|
||||
*/
|
||||
class StringOrBoolean {
|
||||
/**
|
||||
* Constructs a new <code>StringOrBoolean</code>.
|
||||
* String or boolean
|
||||
* @alias module:model/StringOrBoolean
|
||||
* @param {(module:model/Boolean|module:model/String)} instance The actual instance to initialize StringOrBoolean.
|
||||
*/
|
||||
constructor(instance = null) {
|
||||
if (instance === null) {
|
||||
this.actualInstance = null;
|
||||
return;
|
||||
}
|
||||
var match = 0;
|
||||
var errorMessages = [];
|
||||
try {
|
||||
// validate string
|
||||
if (!(typeof instance === 'string')) {
|
||||
throw new Error("Invalid value. Must be string. Input: " + JSON.stringify(instance));
|
||||
}
|
||||
this.actualInstance = instance;
|
||||
match++;
|
||||
} catch(err) {
|
||||
// json data failed to deserialize into String
|
||||
errorMessages.push("Failed to construct String: " + err)
|
||||
}
|
||||
|
||||
try {
|
||||
// validate boolean
|
||||
if (!(typeof instance === 'boolean')) {
|
||||
throw new Error("Invalid value. Must be boolean. Input: " + JSON.stringify(instance));
|
||||
}
|
||||
this.actualInstance = instance;
|
||||
match++;
|
||||
} catch(err) {
|
||||
// json data failed to deserialize into Boolean
|
||||
errorMessages.push("Failed to construct Boolean: " + err)
|
||||
}
|
||||
|
||||
if (match > 1) {
|
||||
throw new Error("Multiple matches found constructing `StringOrBoolean` with oneOf schemas Boolean, String. Input: " + JSON.stringify(instance));
|
||||
} else if (match === 0) {
|
||||
this.actualInstance = null; // clear the actual instance in case there are multiple matches
|
||||
throw new Error("No match found constructing `StringOrBoolean` with oneOf schemas Boolean, String. Details: " +
|
||||
errorMessages.join(", "));
|
||||
} else { // only 1 match
|
||||
// the input is valid
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Constructs a <code>StringOrBoolean</code> from a plain JavaScript object, optionally creating a new instance.
|
||||
* Copies all relevant properties from <code>data</code> to <code>obj</code> if supplied or a new instance if not.
|
||||
* @param {Object} data The plain JavaScript object bearing properties of interest.
|
||||
* @param {module:model/StringOrBoolean} obj Optional instance to populate.
|
||||
* @return {module:model/StringOrBoolean} The populated <code>StringOrBoolean</code> instance.
|
||||
*/
|
||||
static constructFromObject(data, obj) {
|
||||
return new StringOrBoolean(data);
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets the actual instance, which can be <code>Boolean</code>, <code>String</code>.
|
||||
* @return {(module:model/Boolean|module:model/String)} The actual instance.
|
||||
*/
|
||||
getActualInstance() {
|
||||
return this.actualInstance;
|
||||
}
|
||||
|
||||
/**
|
||||
* Sets the actual instance, which can be <code>Boolean</code>, <code>String</code>.
|
||||
* @param {(module:model/Boolean|module:model/String)} obj The actual instance.
|
||||
*/
|
||||
setActualInstance(obj) {
|
||||
this.actualInstance = StringOrBoolean.constructFromObject(obj).getActualInstance();
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns the JSON representation of the actual instance.
|
||||
* @return {string}
|
||||
*/
|
||||
toJSON = function(){
|
||||
return this.getActualInstance();
|
||||
}
|
||||
|
||||
/**
|
||||
* Create an instance of StringOrBoolean from a JSON string.
|
||||
* @param {string} json_string JSON string.
|
||||
* @return {module:model/StringOrBoolean} An instance of StringOrBoolean.
|
||||
*/
|
||||
static fromJSON = function(json_string){
|
||||
return StringOrBoolean.constructFromObject(JSON.parse(json_string));
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
StringOrBoolean.OneOf = ["Boolean", "String"];
|
||||
|
||||
export default StringOrBoolean;
|
||||
|
@ -280,6 +280,20 @@ describe('Petstore', function() {
|
||||
expect(JSON.stringify(result)).to.be(nested_one_of_json);
|
||||
});
|
||||
|
||||
it('should serialize and deserialize StringOrBoolean correctly', function() {
|
||||
// string
|
||||
var json = '"Hello World"'
|
||||
var result = OpenAPIPetstore.ApiClient.convertToType(JSON.parse(json), OpenAPIPetstore.StringOrBoolean);
|
||||
expect(result).to.be.a(OpenAPIPetstore.StringOrBoolean);
|
||||
expect(JSON.stringify(result)).to.be(json);
|
||||
|
||||
// boolean
|
||||
json = 'true'
|
||||
result = OpenAPIPetstore.ApiClient.convertToType(JSON.parse(json), OpenAPIPetstore.StringOrBoolean);
|
||||
expect(result).to.be.a(OpenAPIPetstore.StringOrBoolean);
|
||||
expect(JSON.stringify(result)).to.be(json);
|
||||
});
|
||||
|
||||
});
|
||||
});
|
||||
|
||||
|
@ -0,0 +1,59 @@
|
||||
/**
|
||||
* 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.
|
||||
*
|
||||
*/
|
||||
|
||||
(function(root, factory) {
|
||||
if (typeof define === 'function' && define.amd) {
|
||||
// AMD.
|
||||
define(['expect.js', process.cwd()+'/src/index'], factory);
|
||||
} else if (typeof module === 'object' && module.exports) {
|
||||
// CommonJS-like environments that support module.exports, like Node.
|
||||
factory(require('expect.js'), require(process.cwd()+'/src/index'));
|
||||
} else {
|
||||
// Browser globals (root is window)
|
||||
factory(root.expect, root.OpenApiPetstore);
|
||||
}
|
||||
}(this, function(expect, OpenApiPetstore) {
|
||||
'use strict';
|
||||
|
||||
var instance;
|
||||
|
||||
beforeEach(function() {
|
||||
instance = new OpenApiPetstore.StringOrBoolean();
|
||||
});
|
||||
|
||||
var getProperty = function(object, getter, property) {
|
||||
// Use getter method if present; otherwise, get the property directly.
|
||||
if (typeof object[getter] === 'function')
|
||||
return object[getter]();
|
||||
else
|
||||
return object[property];
|
||||
}
|
||||
|
||||
var setProperty = function(object, setter, property, value) {
|
||||
// Use setter method if present; otherwise, set the property directly.
|
||||
if (typeof object[setter] === 'function')
|
||||
object[setter](value);
|
||||
else
|
||||
object[property] = value;
|
||||
}
|
||||
|
||||
describe('StringOrBoolean', function() {
|
||||
it('should create an instance of StringOrBoolean', function() {
|
||||
// uncomment below and update the code to test StringOrBoolean
|
||||
//var instance = new OpenApiPetstore.StringOrBoolean();
|
||||
//expect(instance).to.be.a(OpenApiPetstore.StringOrBoolean);
|
||||
});
|
||||
|
||||
});
|
||||
|
||||
}));
|
@ -58,6 +58,7 @@ docs/ReadOnlyFirst.md
|
||||
docs/Return.md
|
||||
docs/SpecialModelName.md
|
||||
docs/StoreApi.md
|
||||
docs/StringOrBoolean.md
|
||||
docs/Tag.md
|
||||
docs/User.md
|
||||
docs/UserApi.md
|
||||
@ -123,5 +124,6 @@ src/model/Pig.js
|
||||
src/model/ReadOnlyFirst.js
|
||||
src/model/Return.js
|
||||
src/model/SpecialModelName.js
|
||||
src/model/StringOrBoolean.js
|
||||
src/model/Tag.js
|
||||
src/model/User.js
|
||||
|
@ -213,6 +213,7 @@ Class | Method | HTTP request | Description
|
||||
- [OpenApiPetstore.ReadOnlyFirst](docs/ReadOnlyFirst.md)
|
||||
- [OpenApiPetstore.Return](docs/Return.md)
|
||||
- [OpenApiPetstore.SpecialModelName](docs/SpecialModelName.md)
|
||||
- [OpenApiPetstore.StringOrBoolean](docs/StringOrBoolean.md)
|
||||
- [OpenApiPetstore.Tag](docs/Tag.md)
|
||||
- [OpenApiPetstore.User](docs/User.md)
|
||||
|
||||
|
@ -0,0 +1,8 @@
|
||||
# OpenApiPetstore.StringOrBoolean
|
||||
|
||||
## Properties
|
||||
|
||||
Name | Type | Description | Notes
|
||||
------------ | ------------- | ------------- | -------------
|
||||
|
||||
|
@ -63,6 +63,7 @@ import Pig from './model/Pig';
|
||||
import ReadOnlyFirst from './model/ReadOnlyFirst';
|
||||
import Return from './model/Return';
|
||||
import SpecialModelName from './model/SpecialModelName';
|
||||
import StringOrBoolean from './model/StringOrBoolean';
|
||||
import Tag from './model/Tag';
|
||||
import User from './model/User';
|
||||
import AnotherFakeApi from './api/AnotherFakeApi';
|
||||
@ -412,6 +413,12 @@ export {
|
||||
*/
|
||||
SpecialModelName,
|
||||
|
||||
/**
|
||||
* The StringOrBoolean model constructor.
|
||||
* @property {module:model/StringOrBoolean}
|
||||
*/
|
||||
StringOrBoolean,
|
||||
|
||||
/**
|
||||
* The Tag model constructor.
|
||||
* @property {module:model/Tag}
|
||||
|
@ -84,15 +84,15 @@ class Color {
|
||||
|
||||
// Hex color string, such as #00FF00.
|
||||
try {
|
||||
// validate array of string
|
||||
// validate string
|
||||
if (!(typeof instance === 'string')) {
|
||||
throw new Error("Invalid input. Must be string. Input: " + JSON.stringify(instance));
|
||||
throw new Error("Invalid value. Must be string. Input: " + JSON.stringify(instance));
|
||||
}
|
||||
if (!/^#(?:[0-9a-fA-F]{3}){1,2}$/.test(instance)) {
|
||||
throw new Error("Invalid string value in an array items. Must conform to /^#(?:[0-9a-fA-F]{3}){1,2}$/. Input: " + JSON.stringify(instance));
|
||||
throw new Error("Invalid string value. Must conform to /^#(?:[0-9a-fA-F]{3}){1,2}$/. Input: " + JSON.stringify(instance));
|
||||
}
|
||||
if (instance.length > 7 && instance.length < 7) {
|
||||
throw new Error("Invalid string value in an array items. Max. length: 7. Min. length: 7. Input: " + JSON.stringify(instance));
|
||||
throw new Error("Invalid string value. Max. length: 7. Min. length: 7. Input: " + JSON.stringify(instance));
|
||||
}
|
||||
this.actualInstance = instance;
|
||||
match++;
|
||||
|
@ -0,0 +1,119 @@
|
||||
/**
|
||||
* 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.
|
||||
*
|
||||
*/
|
||||
|
||||
import ApiClient from '../ApiClient';
|
||||
|
||||
/**
|
||||
* The StringOrBoolean model module.
|
||||
* @module model/StringOrBoolean
|
||||
* @version 1.0.0
|
||||
*/
|
||||
class StringOrBoolean {
|
||||
/**
|
||||
* Constructs a new <code>StringOrBoolean</code>.
|
||||
* String or boolean
|
||||
* @alias module:model/StringOrBoolean
|
||||
* @param {(module:model/Boolean|module:model/String)} instance The actual instance to initialize StringOrBoolean.
|
||||
*/
|
||||
constructor(instance = null) {
|
||||
if (instance === null) {
|
||||
this.actualInstance = null;
|
||||
return;
|
||||
}
|
||||
var match = 0;
|
||||
var errorMessages = [];
|
||||
try {
|
||||
// validate string
|
||||
if (!(typeof instance === 'string')) {
|
||||
throw new Error("Invalid value. Must be string. Input: " + JSON.stringify(instance));
|
||||
}
|
||||
this.actualInstance = instance;
|
||||
match++;
|
||||
} catch(err) {
|
||||
// json data failed to deserialize into String
|
||||
errorMessages.push("Failed to construct String: " + err)
|
||||
}
|
||||
|
||||
try {
|
||||
// validate boolean
|
||||
if (!(typeof instance === 'boolean')) {
|
||||
throw new Error("Invalid value. Must be boolean. Input: " + JSON.stringify(instance));
|
||||
}
|
||||
this.actualInstance = instance;
|
||||
match++;
|
||||
} catch(err) {
|
||||
// json data failed to deserialize into Boolean
|
||||
errorMessages.push("Failed to construct Boolean: " + err)
|
||||
}
|
||||
|
||||
if (match > 1) {
|
||||
throw new Error("Multiple matches found constructing `StringOrBoolean` with oneOf schemas Boolean, String. Input: " + JSON.stringify(instance));
|
||||
} else if (match === 0) {
|
||||
this.actualInstance = null; // clear the actual instance in case there are multiple matches
|
||||
throw new Error("No match found constructing `StringOrBoolean` with oneOf schemas Boolean, String. Details: " +
|
||||
errorMessages.join(", "));
|
||||
} else { // only 1 match
|
||||
// the input is valid
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Constructs a <code>StringOrBoolean</code> from a plain JavaScript object, optionally creating a new instance.
|
||||
* Copies all relevant properties from <code>data</code> to <code>obj</code> if supplied or a new instance if not.
|
||||
* @param {Object} data The plain JavaScript object bearing properties of interest.
|
||||
* @param {module:model/StringOrBoolean} obj Optional instance to populate.
|
||||
* @return {module:model/StringOrBoolean} The populated <code>StringOrBoolean</code> instance.
|
||||
*/
|
||||
static constructFromObject(data, obj) {
|
||||
return new StringOrBoolean(data);
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets the actual instance, which can be <code>Boolean</code>, <code>String</code>.
|
||||
* @return {(module:model/Boolean|module:model/String)} The actual instance.
|
||||
*/
|
||||
getActualInstance() {
|
||||
return this.actualInstance;
|
||||
}
|
||||
|
||||
/**
|
||||
* Sets the actual instance, which can be <code>Boolean</code>, <code>String</code>.
|
||||
* @param {(module:model/Boolean|module:model/String)} obj The actual instance.
|
||||
*/
|
||||
setActualInstance(obj) {
|
||||
this.actualInstance = StringOrBoolean.constructFromObject(obj).getActualInstance();
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns the JSON representation of the actual instance.
|
||||
* @return {string}
|
||||
*/
|
||||
toJSON = function(){
|
||||
return this.getActualInstance();
|
||||
}
|
||||
|
||||
/**
|
||||
* Create an instance of StringOrBoolean from a JSON string.
|
||||
* @param {string} json_string JSON string.
|
||||
* @return {module:model/StringOrBoolean} An instance of StringOrBoolean.
|
||||
*/
|
||||
static fromJSON = function(json_string){
|
||||
return StringOrBoolean.constructFromObject(JSON.parse(json_string));
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
StringOrBoolean.OneOf = ["Boolean", "String"];
|
||||
|
||||
export default StringOrBoolean;
|
||||
|
@ -0,0 +1,59 @@
|
||||
/**
|
||||
* 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.
|
||||
*
|
||||
*/
|
||||
|
||||
(function(root, factory) {
|
||||
if (typeof define === 'function' && define.amd) {
|
||||
// AMD.
|
||||
define(['expect.js', process.cwd()+'/src/index'], factory);
|
||||
} else if (typeof module === 'object' && module.exports) {
|
||||
// CommonJS-like environments that support module.exports, like Node.
|
||||
factory(require('expect.js'), require(process.cwd()+'/src/index'));
|
||||
} else {
|
||||
// Browser globals (root is window)
|
||||
factory(root.expect, root.OpenApiPetstore);
|
||||
}
|
||||
}(this, function(expect, OpenApiPetstore) {
|
||||
'use strict';
|
||||
|
||||
var instance;
|
||||
|
||||
beforeEach(function() {
|
||||
instance = new OpenApiPetstore.StringOrBoolean();
|
||||
});
|
||||
|
||||
var getProperty = function(object, getter, property) {
|
||||
// Use getter method if present; otherwise, get the property directly.
|
||||
if (typeof object[getter] === 'function')
|
||||
return object[getter]();
|
||||
else
|
||||
return object[property];
|
||||
}
|
||||
|
||||
var setProperty = function(object, setter, property, value) {
|
||||
// Use setter method if present; otherwise, set the property directly.
|
||||
if (typeof object[setter] === 'function')
|
||||
object[setter](value);
|
||||
else
|
||||
object[property] = value;
|
||||
}
|
||||
|
||||
describe('StringOrBoolean', function() {
|
||||
it('should create an instance of StringOrBoolean', function() {
|
||||
// uncomment below and update the code to test StringOrBoolean
|
||||
//var instance = new OpenApiPetstore.StringOrBoolean();
|
||||
//expect(instance).to.be.a(OpenApiPetstore.StringOrBoolean);
|
||||
});
|
||||
|
||||
});
|
||||
|
||||
}));
|
Loading…
x
Reference in New Issue
Block a user