class Reek::Configuration::SchemaValidator
Schema
validator module.
Public Class Methods
Source
# File lib/reek/configuration/schema_validator.rb, line 12 def initialize(configuration) @configuration = configuration config_directories = configuration['directories']&.keys || [] @validator = Reek::Configuration::Schema.schema(config_directories) end
Public Instance Methods
Source
# File lib/reek/configuration/schema_validator.rb, line 18 def validate result = @validator.call(@configuration) return if result.success? raise Errors::ConfigFileError, error_message(result.errors) rescue NoMethodError raise Errors::ConfigFileError, 'unrecognized configuration data' end
Private Instance Methods
Source
# File lib/reek/configuration/schema_validator.rb, line 30 def error_message(errors) messages = errors.map do |error| "[/#{error.path.join('/')}] #{error.text}." end.join("\n") "\n#{messages}" end
:reek: UtilityFunction