-
-
Notifications
You must be signed in to change notification settings - Fork 593
Description
basicSchemaDefn = """{
'$schema':'http://json-schema.org/draft-04/schema#',
'title':'Test',
'properties':{
'SimpleArrayOfNumberOrString':{
'$ref':'#/definitions/simparray'
}
},
'required':[
'SimpleArrayOfNumberOrString'
],
'type':'object',
'definitions':{
'simparray':{
'oneOf':[
{
'type':'array',
'items':{
'type':'number'
}
},
{
'type':'array',
'items':{
'type':'string'
}
}
]
}
}
}"""
basicSchema = json.loads(basicSchemaDefn.replace(''', '"'))
builder = pjs.ObjectBuilder(basicSchema)
ns = builder.build_classes(no_extra_parameters = True)
ns.Test().from_json('{"SimpleArrayOfNumberOrString" : [0, 1]}')
Proposed fix in classbuilder.py validate:
elif isinstance(val, list):
if len(val) and hasattr(val[0], "validate"):
for subval in val:
subval.validate()
else:
handle basic types
setattr(self, prop, val)