Skip to content
Prev Previous commit
Next Next commit
Fixes python-experimental test_dog tests
  • Loading branch information
spacether committed May 1, 2020
commit a5276ad8669073ffaaf611cdab40ef83f5d9c54c
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@
'_path_to_item': _path_to_item,
'_from_server': _from_server,
'_configuration': _configuration,
'_visited_composed_classes': _visited_composed_classes,
'_visited_composed_classes': self._visited_composed_classes,
}
required_args = {
{{#requiredVars}}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -57,4 +57,4 @@
self._from_server = _from_server
self._path_to_item = _path_to_item
self._configuration = _configuration
self._visited_composed_classes = _visited_composed_classes
self._visited_composed_classes = _visited_composed_classes + (self.__class__,)
Original file line number Diff line number Diff line change
Expand Up @@ -73,7 +73,6 @@ class OpenApiModel(object):
# we don't have a discriminator
# or we have already visited this class before and are sure that we
# want to instantiate it this time

return super(OpenApiModel, cls).__new__(cls)

oneof_anyof_classes = []
Expand All @@ -92,12 +91,13 @@ class OpenApiModel(object):
"property '%s'='%s' at path: %s" %
(disc_prop_name_js, disc_prop_value, path_to_item)
)
oneof_anyof_child = new_cls in oneof_anyof_classes

new_visited_composed_classes = [cls]
new_visited_composed_classes.extend(
visited_composed_classes)
kwargs['_visited_composed_classes'] = new_visited_composed_classes
if new_cls in visited_composed_classes:
# if we are coming from the chosen new_cls use cls instead
return super(OpenApiModel, cls).__new__(cls)

oneof_anyof_child = new_cls in oneof_anyof_classes
kwargs['_visited_composed_classes'] = visited_composed_classes + (cls,)

if cls._composed_schemas.get('allOf') and oneof_anyof_child:
# validate that we can make self because when we make the
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -143,7 +143,6 @@ def __new__(cls, *args, **kwargs):
# we don't have a discriminator
# or we have already visited this class before and are sure that we
# want to instantiate it this time

return super(OpenApiModel, cls).__new__(cls)

oneof_anyof_classes = []
Expand All @@ -162,12 +161,13 @@ def __new__(cls, *args, **kwargs):
"property '%s'='%s' at path: %s" %
(disc_prop_name_js, disc_prop_value, path_to_item)
)
oneof_anyof_child = new_cls in oneof_anyof_classes

new_visited_composed_classes = [cls]
new_visited_composed_classes.extend(
visited_composed_classes)
kwargs['_visited_composed_classes'] = new_visited_composed_classes
if new_cls in visited_composed_classes:
# if we are coming from the chosen new_cls use cls instead
return super(OpenApiModel, cls).__new__(cls)

oneof_anyof_child = new_cls in oneof_anyof_classes
kwargs['_visited_composed_classes'] = visited_composed_classes + (cls,)

if cls._composed_schemas.get('allOf') and oneof_anyof_child:
# validate that we can make self because when we make the
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -140,7 +140,7 @@ def __init__(self, _check_type=True, _from_server=False, _path_to_item=(), _conf
self._from_server = _from_server
self._path_to_item = _path_to_item
self._configuration = _configuration
self._visited_composed_classes = _visited_composed_classes
self._visited_composed_classes = _visited_composed_classes + (self.__class__,)

for var_name, var_value in six.iteritems(kwargs):
if var_name not in self.attribute_map and \
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -140,7 +140,7 @@ def __init__(self, _check_type=True, _from_server=False, _path_to_item=(), _conf
self._from_server = _from_server
self._path_to_item = _path_to_item
self._configuration = _configuration
self._visited_composed_classes = _visited_composed_classes
self._visited_composed_classes = _visited_composed_classes + (self.__class__,)

for var_name, var_value in six.iteritems(kwargs):
if var_name not in self.attribute_map and \
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -140,7 +140,7 @@ def __init__(self, _check_type=True, _from_server=False, _path_to_item=(), _conf
self._from_server = _from_server
self._path_to_item = _path_to_item
self._configuration = _configuration
self._visited_composed_classes = _visited_composed_classes
self._visited_composed_classes = _visited_composed_classes + (self.__class__,)

for var_name, var_value in six.iteritems(kwargs):
if var_name not in self.attribute_map and \
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -170,7 +170,7 @@ def __init__(self, _check_type=True, _from_server=False, _path_to_item=(), _conf
self._from_server = _from_server
self._path_to_item = _path_to_item
self._configuration = _configuration
self._visited_composed_classes = _visited_composed_classes
self._visited_composed_classes = _visited_composed_classes + (self.__class__,)

for var_name, var_value in six.iteritems(kwargs):
if var_name not in self.attribute_map and \
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -140,7 +140,7 @@ def __init__(self, _check_type=True, _from_server=False, _path_to_item=(), _conf
self._from_server = _from_server
self._path_to_item = _path_to_item
self._configuration = _configuration
self._visited_composed_classes = _visited_composed_classes
self._visited_composed_classes = _visited_composed_classes + (self.__class__,)

for var_name, var_value in six.iteritems(kwargs):
if var_name not in self.attribute_map and \
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -140,7 +140,7 @@ def __init__(self, _check_type=True, _from_server=False, _path_to_item=(), _conf
self._from_server = _from_server
self._path_to_item = _path_to_item
self._configuration = _configuration
self._visited_composed_classes = _visited_composed_classes
self._visited_composed_classes = _visited_composed_classes + (self.__class__,)

for var_name, var_value in six.iteritems(kwargs):
if var_name not in self.attribute_map and \
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -140,7 +140,7 @@ def __init__(self, _check_type=True, _from_server=False, _path_to_item=(), _conf
self._from_server = _from_server
self._path_to_item = _path_to_item
self._configuration = _configuration
self._visited_composed_classes = _visited_composed_classes
self._visited_composed_classes = _visited_composed_classes + (self.__class__,)

for var_name, var_value in six.iteritems(kwargs):
if var_name not in self.attribute_map and \
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -140,7 +140,7 @@ def __init__(self, _check_type=True, _from_server=False, _path_to_item=(), _conf
self._from_server = _from_server
self._path_to_item = _path_to_item
self._configuration = _configuration
self._visited_composed_classes = _visited_composed_classes
self._visited_composed_classes = _visited_composed_classes + (self.__class__,)

for var_name, var_value in six.iteritems(kwargs):
if var_name not in self.attribute_map and \
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -161,7 +161,7 @@ def __init__(self, class_name, _check_type=True, _from_server=False, _path_to_it
self._from_server = _from_server
self._path_to_item = _path_to_item
self._configuration = _configuration
self._visited_composed_classes = _visited_composed_classes
self._visited_composed_classes = _visited_composed_classes + (self.__class__,)

self.class_name = class_name
for var_name, var_value in six.iteritems(kwargs):
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -146,7 +146,7 @@ def __init__(self, _check_type=True, _from_server=False, _path_to_item=(), _conf
self._from_server = _from_server
self._path_to_item = _path_to_item
self._configuration = _configuration
self._visited_composed_classes = _visited_composed_classes
self._visited_composed_classes = _visited_composed_classes + (self.__class__,)

for var_name, var_value in six.iteritems(kwargs):
if var_name not in self.attribute_map and \
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -140,7 +140,7 @@ def __init__(self, _check_type=True, _from_server=False, _path_to_item=(), _conf
self._from_server = _from_server
self._path_to_item = _path_to_item
self._configuration = _configuration
self._visited_composed_classes = _visited_composed_classes
self._visited_composed_classes = _visited_composed_classes + (self.__class__,)

for var_name, var_value in six.iteritems(kwargs):
if var_name not in self.attribute_map and \
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -140,7 +140,7 @@ def __init__(self, _check_type=True, _from_server=False, _path_to_item=(), _conf
self._from_server = _from_server
self._path_to_item = _path_to_item
self._configuration = _configuration
self._visited_composed_classes = _visited_composed_classes
self._visited_composed_classes = _visited_composed_classes + (self.__class__,)

for var_name, var_value in six.iteritems(kwargs):
if var_name not in self.attribute_map and \
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -151,7 +151,7 @@ def __init__(self, _check_type=True, _from_server=False, _path_to_item=(), _conf
self._from_server = _from_server
self._path_to_item = _path_to_item
self._configuration = _configuration
self._visited_composed_classes = _visited_composed_classes
self._visited_composed_classes = _visited_composed_classes + (self.__class__,)

for var_name, var_value in six.iteritems(kwargs):
if var_name not in self.attribute_map and \
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -155,7 +155,7 @@ def __init__(self, _check_type=True, _from_server=False, _path_to_item=(), _conf
self._from_server = _from_server
self._path_to_item = _path_to_item
self._configuration = _configuration
self._visited_composed_classes = _visited_composed_classes
self._visited_composed_classes = _visited_composed_classes + (self.__class__,)

for var_name, var_value in six.iteritems(kwargs):
if var_name not in self.attribute_map and \
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -163,14 +163,14 @@ def __init__(self, class_name, _check_type=True, _from_server=False, _path_to_it
self._from_server = _from_server
self._path_to_item = _path_to_item
self._configuration = _configuration
self._visited_composed_classes = _visited_composed_classes
self._visited_composed_classes = _visited_composed_classes + (self.__class__,)

constant_args = {
'_check_type': _check_type,
'_path_to_item': _path_to_item,
'_from_server': _from_server,
'_configuration': _configuration,
'_visited_composed_classes': _visited_composed_classes,
'_visited_composed_classes': self._visited_composed_classes,
}
required_args = {
'class_name': class_name,
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -140,7 +140,7 @@ def __init__(self, _check_type=True, _from_server=False, _path_to_item=(), _conf
self._from_server = _from_server
self._path_to_item = _path_to_item
self._configuration = _configuration
self._visited_composed_classes = _visited_composed_classes
self._visited_composed_classes = _visited_composed_classes + (self.__class__,)

for var_name, var_value in six.iteritems(kwargs):
if var_name not in self.attribute_map and \
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -145,7 +145,7 @@ def __init__(self, name='default-name', _check_type=True, _from_server=False, _p
self._from_server = _from_server
self._path_to_item = _path_to_item
self._configuration = _configuration
self._visited_composed_classes = _visited_composed_classes
self._visited_composed_classes = _visited_composed_classes + (self.__class__,)

self.name = name
for var_name, var_value in six.iteritems(kwargs):
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -157,14 +157,14 @@ def __init__(self, _check_type=True, _from_server=False, _path_to_item=(), _conf
self._from_server = _from_server
self._path_to_item = _path_to_item
self._configuration = _configuration
self._visited_composed_classes = _visited_composed_classes
self._visited_composed_classes = _visited_composed_classes + (self.__class__,)

constant_args = {
'_check_type': _check_type,
'_path_to_item': _path_to_item,
'_from_server': _from_server,
'_configuration': _configuration,
'_visited_composed_classes': _visited_composed_classes,
'_visited_composed_classes': self._visited_composed_classes,
}
required_args = {
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -140,7 +140,7 @@ def __init__(self, _check_type=True, _from_server=False, _path_to_item=(), _conf
self._from_server = _from_server
self._path_to_item = _path_to_item
self._configuration = _configuration
self._visited_composed_classes = _visited_composed_classes
self._visited_composed_classes = _visited_composed_classes + (self.__class__,)

for var_name, var_value in six.iteritems(kwargs):
if var_name not in self.attribute_map and \
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -160,14 +160,14 @@ def __init__(self, pet_type, _check_type=True, _from_server=False, _path_to_item
self._from_server = _from_server
self._path_to_item = _path_to_item
self._configuration = _configuration
self._visited_composed_classes = _visited_composed_classes
self._visited_composed_classes = _visited_composed_classes + (self.__class__,)

constant_args = {
'_check_type': _check_type,
'_path_to_item': _path_to_item,
'_from_server': _from_server,
'_configuration': _configuration,
'_visited_composed_classes': _visited_composed_classes,
'_visited_composed_classes': self._visited_composed_classes,
}
required_args = {
'pet_type': pet_type,
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -140,7 +140,7 @@ def __init__(self, _check_type=True, _from_server=False, _path_to_item=(), _conf
self._from_server = _from_server
self._path_to_item = _path_to_item
self._configuration = _configuration
self._visited_composed_classes = _visited_composed_classes
self._visited_composed_classes = _visited_composed_classes + (self.__class__,)

for var_name, var_value in six.iteritems(kwargs):
if var_name not in self.attribute_map and \
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -160,14 +160,14 @@ def __init__(self, pet_type, _check_type=True, _from_server=False, _path_to_item
self._from_server = _from_server
self._path_to_item = _path_to_item
self._configuration = _configuration
self._visited_composed_classes = _visited_composed_classes
self._visited_composed_classes = _visited_composed_classes + (self.__class__,)

constant_args = {
'_check_type': _check_type,
'_path_to_item': _path_to_item,
'_from_server': _from_server,
'_configuration': _configuration,
'_visited_composed_classes': _visited_composed_classes,
'_visited_composed_classes': self._visited_composed_classes,
}
required_args = {
'pet_type': pet_type,
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -140,7 +140,7 @@ def __init__(self, _check_type=True, _from_server=False, _path_to_item=(), _conf
self._from_server = _from_server
self._path_to_item = _path_to_item
self._configuration = _configuration
self._visited_composed_classes = _visited_composed_classes
self._visited_composed_classes = _visited_composed_classes + (self.__class__,)

for var_name, var_value in six.iteritems(kwargs):
if var_name not in self.attribute_map and \
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -160,14 +160,14 @@ def __init__(self, pet_type, _check_type=True, _from_server=False, _path_to_item
self._from_server = _from_server
self._path_to_item = _path_to_item
self._configuration = _configuration
self._visited_composed_classes = _visited_composed_classes
self._visited_composed_classes = _visited_composed_classes + (self.__class__,)

constant_args = {
'_check_type': _check_type,
'_path_to_item': _path_to_item,
'_from_server': _from_server,
'_configuration': _configuration,
'_visited_composed_classes': _visited_composed_classes,
'_visited_composed_classes': self._visited_composed_classes,
}
required_args = {
'pet_type': pet_type,
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -140,7 +140,7 @@ def __init__(self, _check_type=True, _from_server=False, _path_to_item=(), _conf
self._from_server = _from_server
self._path_to_item = _path_to_item
self._configuration = _configuration
self._visited_composed_classes = _visited_composed_classes
self._visited_composed_classes = _visited_composed_classes + (self.__class__,)

for var_name, var_value in six.iteritems(kwargs):
if var_name not in self.attribute_map and \
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -140,7 +140,7 @@ def __init__(self, _check_type=True, _from_server=False, _path_to_item=(), _conf
self._from_server = _from_server
self._path_to_item = _path_to_item
self._configuration = _configuration
self._visited_composed_classes = _visited_composed_classes
self._visited_composed_classes = _visited_composed_classes + (self.__class__,)

for var_name, var_value in six.iteritems(kwargs):
if var_name not in self.attribute_map and \
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -140,7 +140,7 @@ def __init__(self, _check_type=True, _from_server=False, _path_to_item=(), _conf
self._from_server = _from_server
self._path_to_item = _path_to_item
self._configuration = _configuration
self._visited_composed_classes = _visited_composed_classes
self._visited_composed_classes = _visited_composed_classes + (self.__class__,)

for var_name, var_value in six.iteritems(kwargs):
if var_name not in self.attribute_map and \
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -163,14 +163,14 @@ def __init__(self, class_name, _check_type=True, _from_server=False, _path_to_it
self._from_server = _from_server
self._path_to_item = _path_to_item
self._configuration = _configuration
self._visited_composed_classes = _visited_composed_classes
self._visited_composed_classes = _visited_composed_classes + (self.__class__,)

constant_args = {
'_check_type': _check_type,
'_path_to_item': _path_to_item,
'_from_server': _from_server,
'_configuration': _configuration,
'_visited_composed_classes': _visited_composed_classes,
'_visited_composed_classes': self._visited_composed_classes,
}
required_args = {
'class_name': class_name,
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -140,7 +140,7 @@ def __init__(self, _check_type=True, _from_server=False, _path_to_item=(), _conf
self._from_server = _from_server
self._path_to_item = _path_to_item
self._configuration = _configuration
self._visited_composed_classes = _visited_composed_classes
self._visited_composed_classes = _visited_composed_classes + (self.__class__,)

for var_name, var_value in six.iteritems(kwargs):
if var_name not in self.attribute_map and \
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -151,7 +151,7 @@ def __init__(self, _check_type=True, _from_server=False, _path_to_item=(), _conf
self._from_server = _from_server
self._path_to_item = _path_to_item
self._configuration = _configuration
self._visited_composed_classes = _visited_composed_classes
self._visited_composed_classes = _visited_composed_classes + (self.__class__,)

for var_name, var_value in six.iteritems(kwargs):
if var_name not in self.attribute_map and \
Expand Down
Loading