Class: DataPackage::DataPackageValidator
- Defined in:
- lib/datapackage/validator.rb
Overview
Extends base class with some additional checks for DataPackage conformance.
These include some warnings about missing metadata elements and an existence check for all resources
Direct Known Subclasses
Instance Attribute Summary
Attributes inherited from Validator
Instance Method Summary collapse
-
#initialize(schema_name = :datapackage, opts = {}) ⇒ DataPackageValidator
constructor
A new instance of DataPackageValidator.
- #validate_metadata(package) ⇒ Object
- #validate_resource(package, resource, path) ⇒ Object
Methods inherited from Validator
Constructor Details
#initialize(schema_name = :datapackage, opts = {}) ⇒ DataPackageValidator
Returns a new instance of DataPackageValidator.
102 103 104 |
# File 'lib/datapackage/validator.rb', line 102 def initialize(schema_name=:datapackage, opts={}) super(:datapackage, opts) end |
Instance Method Details
#validate_metadata(package) ⇒ Object
106 107 108 109 110 111 112 |
# File 'lib/datapackage/validator.rb', line 106 def (package) #not required, but recommended prefix = "The package does not include a" add_warning( :metadata, "#{prefix} 'licenses' property", "#/") if package.licenses.empty? add_warning( :metadata, "#{prefix} 'datapackage_version' property", "#/") unless package.datapackage_version add_warning( :integrity, "#{prefix} README.md file" ) unless package.resource_exists?( package.resolve("README.md") ) end |
#validate_resource(package, resource, path) ⇒ Object
114 115 116 117 118 |
# File 'lib/datapackage/validator.rb', line 114 def validate_resource( package, resource, path ) if !package.resource_exists?( package.resolve_resource( resource ) ) add_error( :integrity, "Missing resource #{resource["url"] || resource["path"]}", path) end end |