Closed xaralis closed 4 years ago
@xaralis sorry for the huge reply delay. I totally missed this 😞
Do you have a simple spec example and interaction that is able to reproduce it?
I was able to identify a minimal test case that is able to reproduce the issue
def test_issue_359(polymorphic_abspath, polymorphic_dict):
polymorphic_dict['definitions']['GenericPet']['x-nullable'] = True
polymorphic_spec = Spec.from_dict(polymorphic_dict)
unmarshal_response(
response=mock.Mock(
spec=IncomingResponse,
status_code=200,
headers={'content-type': APP_JSON},
json=mock.Mock(
return_value={
'number_of_pets': 1,
'list': [None],
},
),
),
op=polymorphic_spec.resources['pets'].operations['get_pets'],
)
Definitely the report looks like a bug.
@xaralis : thanks for opening it
Where a thing is defined as
x-nullable
and has adiscriminator
at the same time,bravado-core@5.14.0
validation fails with aTypeError
in case the instance resolves toNone
:This definitely should error out and instead validate A-OK in fact.