- edited description
Invalid message when query param is empty with date format
Swagger/OpenAPI configuration:
"type": "string",
"format": "date"
Send request with query param is empty. Eg: ?key=
Actual: validation.request.parameter.missing
Expected: validation.request.parameter.schema.format
or validation.request.parameter.schema.format.date
Root cause: the type string with data format will create DateSchema
instead of StringSchema
PR: https://bitbucket.org/atlassian/swagger-request-validator/pull-requests/416
Support other types inherit from string type: https://bitbucket.org/atlassian/swagger-request-validator/pull-requests/417
package io.swagger.v3.oas.models.media;
public class StringSchema extends Schema<String> {
public StringSchema() {
super("string", null);
}
package io.swagger.v3.oas.models.media;
public class BinarySchema extends Schema<byte[]> {
public BinarySchema() {
super("string", "binary");
}
package io.swagger.v3.oas.models.media;
public class ByteArraySchema extends Schema<byte[]> {
public ByteArraySchema() {
super("string", "byte");
}
package io.swagger.v3.oas.models.media;
public class DateSchema extends Schema<Date> {
public DateSchema() {
super("string", "date");
}
package io.swagger.v3.oas.models.media;
public class DateTimeSchema extends Schema<OffsetDateTime> {
public DateTimeSchema() {
super("string", "date-time");
}
package io.swagger.v3.oas.models.media;
public class EmailSchema extends Schema<String> {
public EmailSchema() {
super("string", "email");
}
package io.swagger.v3.oas.models.media;
public class FileSchema extends Schema<String> {
public FileSchema() {
super("string", "binary");
}
package io.swagger.v3.oas.models.media;
public class PasswordSchema extends Schema<String> {
public PasswordSchema() {
super("string", "password");
}
package io.swagger.v3.oas.models.media;
public class StringSchema extends Schema<String> {
public StringSchema() {
super("string", null);
}
package io.swagger.v3.oas.models.media;
public class UUIDSchema extends Schema<UUID> {
public UUIDSchema() {
super("string", "uuid");
}
Comments (3)
-
reporter -
- changed status to open
-
Thanks for raising this. Apologies for the delay looking into it - Ive been on extended leave.
I actually don’t think this is a bug. The OpenAPI spec has a
allowEmptyValue
property that needs to be set in order to allow empty query params.In this case I think it’s valid to report a missing param if that property isn’t set.'
https://swagger.io/docs/specification/describing-parameters/
- Log in to comment