def test_from_data_no_security(self, mocker): from openapi_python_client.parser.openapi import Endpoint data = oai.Operation.construct( description=mocker.MagicMock(), operationId=mocker.MagicMock(), security=None, responses=mocker.MagicMock(), ) _add_parameters = mocker.patch.object( Endpoint, "_add_parameters", return_value=(mocker.MagicMock(), mocker.MagicMock())) _add_responses = mocker.patch.object(Endpoint, "_add_responses", return_value=(mocker.MagicMock(), mocker.MagicMock())) _add_body = mocker.patch.object(Endpoint, "_add_body", return_value=(mocker.MagicMock(), mocker.MagicMock())) path = mocker.MagicMock() method = mocker.MagicMock() mocker.patch("openapi_python_client.utils.remove_string_escapes", return_value=data.description) schemas = mocker.MagicMock() config = MagicMock() Endpoint.from_data(data=data, path=path, method=method, tag="a", schemas=schemas, config=config) _add_parameters.assert_called_once_with( endpoint=Endpoint( path=path, method=method, description=data.description, name=data.operationId, requires_security=False, tag="a", ), data=data, schemas=schemas, config=config, ) _add_responses.assert_called_once_with( endpoint=_add_parameters.return_value[0], data=data.responses, schemas=_add_parameters.return_value[1], config=config, ) _add_body.assert_called_once_with( endpoint=_add_responses.return_value[0], data=data, schemas=_add_responses.return_value[1], config=config)
def test_from_data_standard(self, mocker): from openapi_python_client.parser.openapi import Endpoint path = mocker.MagicMock() method = mocker.MagicMock() param_schemas = mocker.MagicMock() param_endpoint = mocker.MagicMock() _add_parameters = mocker.patch.object(Endpoint, "_add_parameters", return_value=(param_endpoint, param_schemas)) response_schemas = mocker.MagicMock() response_endpoint = mocker.MagicMock() _add_responses = mocker.patch.object(Endpoint, "_add_responses", return_value=(response_endpoint, response_schemas)) body_schemas = mocker.MagicMock() body_endpoint = mocker.MagicMock() _add_body = mocker.patch.object(Endpoint, "_add_body", return_value=(body_endpoint, body_schemas)) data = oai.Operation.construct( description=mocker.MagicMock(), operationId=mocker.MagicMock(), security={"blah": "bloo"}, responses=mocker.MagicMock(), ) initial_schemas = mocker.MagicMock() mocker.patch("openapi_python_client.utils.remove_string_escapes", return_value=data.description) endpoint = Endpoint.from_data(data=data, path=path, method=method, tag="default", schemas=initial_schemas) assert endpoint == _add_body.return_value _add_parameters.assert_called_once_with( endpoint=Endpoint( path=path, method=method, description=data.description, name=data.operationId, requires_security=True, tag="default", ), data=data, schemas=initial_schemas, ) _add_responses.assert_called_once_with(endpoint=param_endpoint, data=data.responses, schemas=param_schemas) _add_body.assert_called_once_with(endpoint=response_endpoint, data=data, schemas=response_schemas)
def test_from_data_bad_responses(self, mocker): from openapi_python_client.parser.openapi import Endpoint path = mocker.MagicMock() method = mocker.MagicMock() parse_error = ParseError(data=mocker.MagicMock()) param_schemas = mocker.MagicMock() _add_parameters = mocker.patch.object(Endpoint, "_add_parameters", return_value=(mocker.MagicMock(), param_schemas)) response_schemas = mocker.MagicMock() _add_responses = mocker.patch.object(Endpoint, "_add_responses", return_value=(parse_error, response_schemas)) data = oai.Operation.construct( description=mocker.MagicMock(), operationId=mocker.MagicMock(), security={"blah": "bloo"}, responses=mocker.MagicMock(), ) initial_schemas = mocker.MagicMock() result = Endpoint.from_data(data=data, path=path, method=method, tag="default", schemas=initial_schemas) assert result == (parse_error, response_schemas)
def test_from_data_no_operation_id(self, mocker): from openapi_python_client.parser.openapi import Endpoint path = "/path/with/{param}/" method = "get" _add_parameters = mocker.patch.object( Endpoint, "_add_parameters", return_value=(mocker.MagicMock(), mocker.MagicMock())) _add_responses = mocker.patch.object(Endpoint, "_add_responses", return_value=(mocker.MagicMock(), mocker.MagicMock())) _add_body = mocker.patch.object(Endpoint, "_add_body", return_value=(mocker.MagicMock(), mocker.MagicMock())) data = oai.Operation.construct( description=mocker.MagicMock(), operationId=None, security={"blah": "bloo"}, responses=mocker.MagicMock(), ) schemas = mocker.MagicMock() mocker.patch("openapi_python_client.utils.remove_string_escapes", return_value=data.description) result = Endpoint.from_data(data=data, path=path, method=method, tag="default", schemas=schemas) assert result == _add_body.return_value _add_parameters.assert_called_once_with( endpoint=Endpoint( path=path, method=method, description=data.description, name="get_path_with_param", requires_security=True, tag="default", ), data=data, schemas=schemas, ) _add_responses.assert_called_once_with( endpoint=_add_parameters.return_value[0], data=data.responses, schemas=_add_parameters.return_value[1]) _add_body.assert_called_once_with( endpoint=_add_responses.return_value[0], data=data, schemas=_add_responses.return_value[1])