* [PHP-Symfony] fixes validation of date-time parameter
This fixes parts of #14930.
Without this patch a parameter declared as date-time
is validated against Symfony's "DateTime" constraint,
which always fails. Because this constraint expects
a string with format "Y-m-d H:i:s".
It fails because the generated code performs the check
after the deserialization, so the variable checked is not
a string anymore.
Besides this, even if we performed that validation on the
string, that would not work well because OpenApi
specification expects date-time to conform to RFC 3339
and that "Y-m-d H:i:s" would reject RFC 3339 compliant dates.
With this change we ensure that the string provided by the
web user could be parsed by PHP to DateTime, which solves both issues.
(Note however that it means that it now accepts more formats than just
RFC 3339 compliant ones for those parameters (it would accept all formats
accepted by PHP DateTime). That being said it's compliant with the guideline
""be conservative in what you send, be liberal in what you accept")
* [PHP-Symfony] Fix handling of null date-time parameter
This fixes one of the issue described on #14930, namely that
the deserializeString method of the generated class JsmSerializer returns null
for other types of string, but not for date-time. Instead it returns a DateTime
which represents "now" (because that what `new DateTime(null)` does).
Consequently when an API declares a date-time parameter as non-required and
when that endpoint is called without that parameters, then the user code
would end up having "now" instead of "null" for this parameter.
* Implement WARN messages for ineffective schema validation constraints
* Implement tests String, Number, Object schema validations
* Implement HashSet to store Validations for different types
* Revert Validation Helper functions; Add Test cases for Any and Boolean
* Implement Unit Test for Array with inffective schema validations
* Reformat Code; Optimize Imports
* Add assertions to ineffective validation tests
* Add Test case for Null Schema Validations
* Adjust log level and message
* Merge commit ... into issue-6491
---------
Co-authored-by: Chidu Nadig <chidu.nadig@gmail.com>
Expose `isPassword` codegen property. This property can be used in the
mustache templates to handle specific generation use case. _e.g._:
* hiding the string value of password fields in generated toString()
methods
* use more specific types like `char[]` instead of `String` in
[Java](https://stackoverflow.com/a/8881376)
Closes https://github.com/OpenAPITools/openapi-generator/issues/9124
* only add suffix or prefix if type is not a primitive or from dependency
* add tests
* add sample
* add second API with prefix and suffix
* add primitives
* add missing pom
* add missing shell script
* fix cycle dependency
* generate samples
* Remove double brace initialization
* Use diamond operator
* Less clutter in generated api classes
* Optimize isJsonMime
* Revert change in escapeString
Skip toString() on string parameters.
* Fix edge-cases
A ServerVariable without enumValues and/or operationServers
with any ServerVariables would lead to invalid code.
Use a single InputStream instead of "File".
This allows the generated code to build in case of a definition like:
requestBody:
content:
text/plain:
schema:
type: string
format: binary
This fixes#9372
* add unsigned integer/long support to c# netcore client
* moved formats to separate file
* moved formats to cli options
* moved formats to cli options
* reverted unintended changes
* reverted unintended changes
---------
Co-authored-by: William Cheng <wing328hk@gmail.com>
* Base impl
* Improve Unity support
* update samples
* Sync bool property
* Update samples
* Set support file property
* Address comments
* Fix test asmdef
* Fixes for WebGL support
* Add note about Unity version
* Add Unity Sample
---------
Co-authored-by: William Cheng <wing328hk@gmail.com>