Projet

Général

Profil

0007-wip-report-xsd-type-name-in-json-schema-for-debug.patch

Benjamin Dauvergne, 23 mars 2022 11:14

Télécharger (1,92 ko)

Voir les différences:

Subject: [PATCH 7/7] wip: report xsd type name in json schema for debug

 passerelle/apps/soap/models.py | 8 +++++---
 1 file changed, 5 insertions(+), 3 deletions(-)
passerelle/apps/soap/models.py
187 187
                return {
188 188
                    'type': 'array',
189 189
                    'items': self.type2schema(xsd_type.elements[0][1].type, compress=compress),
190
                    'description': f'{xsd_type.qname}',
190 191
                }
191 192
            return self.type2schema(xsd_type.elements[0][1].type, compress=compress)
192 193
        if isinstance(xsd_type, zeep.xsd.ComplexType):
......
194 195
            schema = {
195 196
                'type': 'object',
196 197
                'properties': properties,
198
                'description': f'{xsd_type.qname}',
197 199
            }
198 200
            for key, element in xsd_type.elements:
199 201
                if element.min_occurs > 0:
......
203 205
                    element_schema = {'type': 'array', 'items': element_schema}
204 206
                properties[key] = element_schema
205 207
            if not properties:
206
                return None
208
                return {'type': 'null', 'description': f'{xsd_type.qname}'}
207 209
            return schema
208 210
        if isinstance(xsd_type, zeep.xsd.BuiltinType):
209
            return {'type': 'string'}
210
        return f'!!! UNKNOWN TYPE {xsd_type} !!!'
211
            return {'type': 'string', 'description': f'{xsd_type.qname}'}
212
        return {'description': f'!!! convertible {xsd_type.qname} !!!'}
211
-