Parcourir la source

Fix the schema validator to validate areas properly

Gu1 il y a 11 ans
Parent
commit
52fb459690
1 fichiers modifiés avec 5 ajouts et 1 suppressions
  1. 5 1
      ispformat/validator/schemavalidator.py

+ 5 - 1
ispformat/validator/schemavalidator.py

@@ -78,8 +78,12 @@ def validate_isp(jdict):
                               validator=u'validate_url', validator_value=url)
                               validator=u'validate_url', validator_value=url)
 
 
     for i, ca in enumerate(jdict.get('coveredAreas', [])):
     for i, ca in enumerate(jdict.get('coveredAreas', [])):
-        if validate_geojson(ca.get('area', {})):
+        area=ca.get('area')
+        if area and validate_geojson(area):
             continue
             continue
+        elif not area:
+            continue
+
         yield ValidationError(
         yield ValidationError(
             u'GeoJSON can only contain the following types: %s'%repr(geojson_allowed_types),
             u'GeoJSON can only contain the following types: %s'%repr(geojson_allowed_types),
             instance=ca, schema=schema[u'definitions'][u'coveredArea'][u'properties'][u'area'],
             instance=ca, schema=schema[u'definitions'][u'coveredArea'][u'properties'][u'area'],