From ba74e2e53919e4fb1417368d2f759d36a6b1d354 Mon Sep 17 00:00:00 2001 From: Jari Voutilainen Date: Wed, 24 Mar 2021 14:25:15 +0200 Subject: [PATCH] Fix validate command --- ckanext/spatial/commands/validation.py | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/ckanext/spatial/commands/validation.py b/ckanext/spatial/commands/validation.py index b2619673..69ca37e0 100644 --- a/ckanext/spatial/commands/validation.py +++ b/ckanext/spatial/commands/validation.py @@ -10,6 +10,8 @@ log = logging.getLogger(__name__) +from io import open + class Validation(CkanCommand): '''Validation commands @@ -68,7 +70,7 @@ def report(self): print ' %s: %s' % (col_name, row[i]) def validate_file(self): - from ckanext.spatial.harvesters import SpatialHarvester + from ckanext.spatial.harvesters.base import SpatialHarvester from ckanext.spatial.model import ISODocument if len(self.args) > 2: @@ -81,7 +83,7 @@ def validate_file(self): if not os.path.exists(metadata_filepath): print 'Filepath %s not found' % metadata_filepath sys.exit(1) - with open(metadata_filepath, 'rb') as f: + with open(metadata_filepath, 'r', encoding="utf-8") as f: metadata_xml = f.read() validators = SpatialHarvester()._get_validator() @@ -96,7 +98,7 @@ def validate_file(self): xml = etree.fromstring(xml_string) # XML validation - valid, errors = validators.is_valid(xml) + valid, validator_name, errors = validators.is_valid(xml) # CKAN read of values if valid: @@ -112,6 +114,7 @@ def validate_file(self): print '***************' print 'File: \'%s\'' % metadata_filepath print 'Valid: %s' % valid + print 'Validator: %s' % validator_name if not valid: print 'Errors:' print pprint(errors)