Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Revert "Issue 13043: converted an exception to a warning" #13074

Merged
merged 2 commits into from Aug 3, 2022
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Jump to
Jump to file
Failed to load files.
Diff view
Diff view
Expand Up @@ -1687,12 +1687,13 @@ private MappedModel getDiscriminatorMappedModel(CodegenDiscriminator disc) {
*/
private void addSchemaToIncludedSchemaList(List<Schema> includedSchemas, Schema schema) {

// if the schema is in the list, issue a warning
// if the schema is in the list, then throw an exception.
// this should never happen
if(includedSchemas.contains(schema)) {
LOGGER.warn("Attempted to add a schema to the includedSchemas list twice");
} else {
includedSchemas.add(schema);
throw new RuntimeException("Attempted to add a schema to the includedSchemas list twice");
}

includedSchemas.add(schema);
}

/***
Expand Down
@@ -0,0 +1,64 @@
# coding: utf-8

"""
openapi 3.0.3 sample spec

sample spec for testing openapi functionality, built from json schema tests for draft6 # noqa: E501

The version of the OpenAPI document: 0.0.1
Generated by: https://openapi-generator.tech
"""

import unittest

import unit_test_api
from unit_test_api.model.additionalproperties_allows_a_schema_which_should_validate import AdditionalpropertiesAllowsASchemaWhichShouldValidate
from unit_test_api import configuration


class TestAdditionalpropertiesAllowsASchemaWhichShouldValidate(unittest.TestCase):
"""AdditionalpropertiesAllowsASchemaWhichShouldValidate unit test stubs"""
_configuration = configuration.Configuration()

def test_no_additional_properties_is_valid_passes(self):
# no additional properties is valid
AdditionalpropertiesAllowsASchemaWhichShouldValidate._from_openapi_data(
{
"foo":
1,
},
_configuration=self._configuration
)

def test_an_additional_invalid_property_is_invalid_fails(self):
# an additional invalid property is invalid
with self.assertRaises((unit_test_api.ApiValueError, unit_test_api.ApiTypeError)):
AdditionalpropertiesAllowsASchemaWhichShouldValidate._from_openapi_data(
{
"foo":
1,
"bar":
2,
"quux":
12,
},
_configuration=self._configuration
)

def test_an_additional_valid_property_is_valid_passes(self):
# an additional valid property is valid
AdditionalpropertiesAllowsASchemaWhichShouldValidate._from_openapi_data(
{
"foo":
1,
"bar":
2,
"quux":
True,
},
_configuration=self._configuration
)


if __name__ == '__main__':
unittest.main()
@@ -0,0 +1,39 @@
# coding: utf-8

"""
openapi 3.0.3 sample spec

sample spec for testing openapi functionality, built from json schema tests for draft6 # noqa: E501

The version of the OpenAPI document: 0.0.1
Generated by: https://openapi-generator.tech
"""

import unittest

import unit_test_api
from unit_test_api.model.additionalproperties_are_allowed_by_default import AdditionalpropertiesAreAllowedByDefault
from unit_test_api import configuration


class TestAdditionalpropertiesAreAllowedByDefault(unittest.TestCase):
"""AdditionalpropertiesAreAllowedByDefault unit test stubs"""
_configuration = configuration.Configuration()

def test_additional_properties_are_allowed_passes(self):
# additional properties are allowed
AdditionalpropertiesAreAllowedByDefault._from_openapi_data(
{
"foo":
1,
"bar":
2,
"quux":
True,
},
_configuration=self._configuration
)


if __name__ == '__main__':
unittest.main()
@@ -0,0 +1,46 @@
# coding: utf-8

"""
openapi 3.0.3 sample spec

sample spec for testing openapi functionality, built from json schema tests for draft6 # noqa: E501

The version of the OpenAPI document: 0.0.1
Generated by: https://openapi-generator.tech
"""

import unittest

import unit_test_api
from unit_test_api.model.additionalproperties_can_exist_by_itself import AdditionalpropertiesCanExistByItself
from unit_test_api import configuration


class TestAdditionalpropertiesCanExistByItself(unittest.TestCase):
"""AdditionalpropertiesCanExistByItself unit test stubs"""
_configuration = configuration.Configuration()

def test_an_additional_invalid_property_is_invalid_fails(self):
# an additional invalid property is invalid
with self.assertRaises((unit_test_api.ApiValueError, unit_test_api.ApiTypeError)):
AdditionalpropertiesCanExistByItself._from_openapi_data(
{
"foo":
1,
},
_configuration=self._configuration
)

def test_an_additional_valid_property_is_valid_passes(self):
# an additional valid property is valid
AdditionalpropertiesCanExistByItself._from_openapi_data(
{
"foo":
True,
},
_configuration=self._configuration
)


if __name__ == '__main__':
unittest.main()
@@ -0,0 +1,50 @@
# coding: utf-8

"""
openapi 3.0.3 sample spec

sample spec for testing openapi functionality, built from json schema tests for draft6 # noqa: E501

The version of the OpenAPI document: 0.0.1
Generated by: https://openapi-generator.tech
"""

import unittest

import unit_test_api
from unit_test_api.model.additionalproperties_should_not_look_in_applicators import AdditionalpropertiesShouldNotLookInApplicators
from unit_test_api import configuration


class TestAdditionalpropertiesShouldNotLookInApplicators(unittest.TestCase):
"""AdditionalpropertiesShouldNotLookInApplicators unit test stubs"""
_configuration = configuration.Configuration()

def test_properties_defined_in_allof_are_not_examined_fails(self):
# properties defined in allOf are not examined
with self.assertRaises((unit_test_api.ApiValueError, unit_test_api.ApiTypeError)):
AdditionalpropertiesShouldNotLookInApplicators._from_openapi_data(
{
"foo":
1,
"bar":
True,
},
_configuration=self._configuration
)

def test_valid_test_case_passes(self):
# valid test case
AdditionalpropertiesShouldNotLookInApplicators._from_openapi_data(
{
"foo":
False,
"bar":
True,
},
_configuration=self._configuration
)


if __name__ == '__main__':
unittest.main()
@@ -0,0 +1,72 @@
# coding: utf-8

"""
openapi 3.0.3 sample spec

sample spec for testing openapi functionality, built from json schema tests for draft6 # noqa: E501

The version of the OpenAPI document: 0.0.1
Generated by: https://openapi-generator.tech
"""

import unittest

import unit_test_api
from unit_test_api.model.allof import Allof
from unit_test_api import configuration


class TestAllof(unittest.TestCase):
"""Allof unit test stubs"""
_configuration = configuration.Configuration()

def test_allof_passes(self):
# allOf
Allof._from_openapi_data(
{
"foo":
"baz",
"bar":
2,
},
_configuration=self._configuration
)

def test_mismatch_first_fails(self):
# mismatch first
with self.assertRaises((unit_test_api.ApiValueError, unit_test_api.ApiTypeError)):
Allof._from_openapi_data(
{
"bar":
2,
},
_configuration=self._configuration
)

def test_mismatch_second_fails(self):
# mismatch second
with self.assertRaises((unit_test_api.ApiValueError, unit_test_api.ApiTypeError)):
Allof._from_openapi_data(
{
"foo":
"baz",
},
_configuration=self._configuration
)

def test_wrong_type_fails(self):
# wrong type
with self.assertRaises((unit_test_api.ApiValueError, unit_test_api.ApiTypeError)):
Allof._from_openapi_data(
{
"foo":
"baz",
"bar":
"quux",
},
_configuration=self._configuration
)


if __name__ == '__main__':
unittest.main()
@@ -0,0 +1,88 @@
# coding: utf-8

"""
openapi 3.0.3 sample spec

sample spec for testing openapi functionality, built from json schema tests for draft6 # noqa: E501

The version of the OpenAPI document: 0.0.1
Generated by: https://openapi-generator.tech
"""

import unittest

import unit_test_api
from unit_test_api.model.allof_combined_with_anyof_oneof import AllofCombinedWithAnyofOneof
from unit_test_api import configuration


class TestAllofCombinedWithAnyofOneof(unittest.TestCase):
"""AllofCombinedWithAnyofOneof unit test stubs"""
_configuration = configuration.Configuration()

def test_allof_true_anyof_false_oneof_false_fails(self):
# allOf: true, anyOf: false, oneOf: false
with self.assertRaises((unit_test_api.ApiValueError, unit_test_api.ApiTypeError)):
AllofCombinedWithAnyofOneof._from_openapi_data(
2,
_configuration=self._configuration
)

def test_allof_false_anyof_false_oneof_true_fails(self):
# allOf: false, anyOf: false, oneOf: true
with self.assertRaises((unit_test_api.ApiValueError, unit_test_api.ApiTypeError)):
AllofCombinedWithAnyofOneof._from_openapi_data(
5,
_configuration=self._configuration
)

def test_allof_false_anyof_true_oneof_true_fails(self):
# allOf: false, anyOf: true, oneOf: true
with self.assertRaises((unit_test_api.ApiValueError, unit_test_api.ApiTypeError)):
AllofCombinedWithAnyofOneof._from_openapi_data(
15,
_configuration=self._configuration
)

def test_allof_true_anyof_true_oneof_false_fails(self):
# allOf: true, anyOf: true, oneOf: false
with self.assertRaises((unit_test_api.ApiValueError, unit_test_api.ApiTypeError)):
AllofCombinedWithAnyofOneof._from_openapi_data(
6,
_configuration=self._configuration
)

def test_allof_true_anyof_true_oneof_true_passes(self):
# allOf: true, anyOf: true, oneOf: true
AllofCombinedWithAnyofOneof._from_openapi_data(
30,
_configuration=self._configuration
)

def test_allof_true_anyof_false_oneof_true_fails(self):
# allOf: true, anyOf: false, oneOf: true
with self.assertRaises((unit_test_api.ApiValueError, unit_test_api.ApiTypeError)):
AllofCombinedWithAnyofOneof._from_openapi_data(
10,
_configuration=self._configuration
)

def test_allof_false_anyof_true_oneof_false_fails(self):
# allOf: false, anyOf: true, oneOf: false
with self.assertRaises((unit_test_api.ApiValueError, unit_test_api.ApiTypeError)):
AllofCombinedWithAnyofOneof._from_openapi_data(
3,
_configuration=self._configuration
)

def test_allof_false_anyof_false_oneof_false_fails(self):
# allOf: false, anyOf: false, oneOf: false
with self.assertRaises((unit_test_api.ApiValueError, unit_test_api.ApiTypeError)):
AllofCombinedWithAnyofOneof._from_openapi_data(
1,
_configuration=self._configuration
)


if __name__ == '__main__':
unittest.main()