From 49c23308105c4d8911c9c43017f0e170aa68ef7e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Peter=20Ba=C5=A1ista?= Date: Fri, 9 Feb 2018 17:37:57 +0100 Subject: [PATCH] Use appropriate default values for OpenAPI object fields The specification: https://github.com/OAI/OpenAPI-Specification/blob/master/versions/3.0.1.md#schemaObject clearly states that fields: - #/info - #/paths - #/components - #/components/schemas - #/components/responses - #/components/parameters - #/components/requestBodies are objects. --- openapi_core/components.py | 8 ++++---- openapi_core/specs.py | 6 +++--- 2 files changed, 7 insertions(+), 7 deletions(-) diff --git a/openapi_core/components.py b/openapi_core/components.py index 978aef2f..39a955a8 100644 --- a/openapi_core/components.py +++ b/openapi_core/components.py @@ -24,10 +24,10 @@ def __init__(self, dereferencer, schemas_registry): def create(self, components_spec): components_deref = self.dereferencer.dereference(components_spec) - schemas_spec = components_deref.get('schemas', []) - responses_spec = components_deref.get('responses', []) - parameters_spec = components_deref.get('parameters', []) - request_bodies_spec = components_deref.get('request_bodies', []) + schemas_spec = components_deref.get('schemas', {}) + responses_spec = components_deref.get('responses', {}) + parameters_spec = components_deref.get('parameters', {}) + request_bodies_spec = components_deref.get('request_bodies', {}) schemas = self.schemas_generator.generate(schemas_spec) responses = self._generate_response(responses_spec) diff --git a/openapi_core/specs.py b/openapi_core/specs.py index 4edf5e4d..906ff2e2 100644 --- a/openapi_core/specs.py +++ b/openapi_core/specs.py @@ -77,10 +77,10 @@ def create(self, spec_dict, spec_url=''): spec_dict_deref = self.dereferencer.dereference(spec_dict) - info_spec = spec_dict_deref.get('info', []) + info_spec = spec_dict_deref.get('info', {}) servers_spec = spec_dict_deref.get('servers', []) - paths = spec_dict_deref.get('paths', []) - components_spec = spec_dict_deref.get('components', []) + paths = spec_dict_deref.get('paths', {}) + components_spec = spec_dict_deref.get('components', {}) info = self.info_factory.create(info_spec) servers = self.servers_generator.generate(servers_spec)