forked from loafle/openapi-generator-original
Sanitize tuples properly (#3949)
* Sanitize tuples properly In Python, Tuples are fixed size in nature whereas lists are dynamic. So they should be sanitize as same as lists. Failure case here is when you have a query or post parameter as Datetime. * Update the Petstore sample * Skip file sanitization * Return tuple instead of list * Sanitize all tuples, no exceptions
This commit is contained in:
parent
a76d69513c
commit
34f1e36146
@ -176,7 +176,7 @@ class ApiClient(object):
|
|||||||
:param obj: The data to serialize.
|
:param obj: The data to serialize.
|
||||||
:return: The serialized form of data.
|
:return: The serialized form of data.
|
||||||
"""
|
"""
|
||||||
types = (str, float, bool, tuple) + tuple(integer_types) + (text_type,)
|
types = (str, float, bool, bytes) + tuple(integer_types) + (text_type,)
|
||||||
if isinstance(obj, type(None)):
|
if isinstance(obj, type(None)):
|
||||||
return None
|
return None
|
||||||
elif isinstance(obj, types):
|
elif isinstance(obj, types):
|
||||||
@ -184,6 +184,9 @@ class ApiClient(object):
|
|||||||
elif isinstance(obj, list):
|
elif isinstance(obj, list):
|
||||||
return [self.sanitize_for_serialization(sub_obj)
|
return [self.sanitize_for_serialization(sub_obj)
|
||||||
for sub_obj in obj]
|
for sub_obj in obj]
|
||||||
|
elif isinstance(obj, tuple):
|
||||||
|
return tuple(self.sanitize_for_serialization(sub_obj)
|
||||||
|
for sub_obj in obj)
|
||||||
elif isinstance(obj, (datetime, date)):
|
elif isinstance(obj, (datetime, date)):
|
||||||
return obj.isoformat()
|
return obj.isoformat()
|
||||||
else:
|
else:
|
||||||
|
@ -176,7 +176,7 @@ class ApiClient(object):
|
|||||||
:param obj: The data to serialize.
|
:param obj: The data to serialize.
|
||||||
:return: The serialized form of data.
|
:return: The serialized form of data.
|
||||||
"""
|
"""
|
||||||
types = (str, float, bool, tuple) + tuple(integer_types) + (text_type,)
|
types = (str, float, bool, bytes) + tuple(integer_types) + (text_type,)
|
||||||
if isinstance(obj, type(None)):
|
if isinstance(obj, type(None)):
|
||||||
return None
|
return None
|
||||||
elif isinstance(obj, types):
|
elif isinstance(obj, types):
|
||||||
@ -184,6 +184,9 @@ class ApiClient(object):
|
|||||||
elif isinstance(obj, list):
|
elif isinstance(obj, list):
|
||||||
return [self.sanitize_for_serialization(sub_obj)
|
return [self.sanitize_for_serialization(sub_obj)
|
||||||
for sub_obj in obj]
|
for sub_obj in obj]
|
||||||
|
elif isinstance(obj, tuple):
|
||||||
|
return tuple(self.sanitize_for_serialization(sub_obj)
|
||||||
|
for sub_obj in obj)
|
||||||
elif isinstance(obj, (datetime, date)):
|
elif isinstance(obj, (datetime, date)):
|
||||||
return obj.isoformat()
|
return obj.isoformat()
|
||||||
else:
|
else:
|
||||||
|
Loading…
x
Reference in New Issue
Block a user