Class: Core::Filtering::SimpleRules::Validation::SingleRuleAgainstSchemaValidator

Inherits:
SimpleRulesValidator
  • Object
show all
Defined in:
lib/core/filtering/simple_rules/validation/single_rule_against_schema_validator.rb

Instance Method Summary collapse

Constructor Details

#initialize(rules, schema = Core::Filtering::SimpleRules::Validation::SINGLE_RULE_SCHEMA) ⇒ SingleRuleAgainstSchemaValidator

Returns a new instance of SingleRuleAgainstSchemaValidator.



18
19
20
21
22
# File 'lib/core/filtering/simple_rules/validation/single_rule_against_schema_validator.rb', line 18

def initialize(rules, schema = Core::Filtering::SimpleRules::Validation::SINGLE_RULE_SCHEMA)
  super(rules)
  @schema = schema
  @schema_validator = SchemaValidator.new(error_id: SIMPLE_RULES_ID)
end

Instance Method Details

#are_rules_validObject



24
25
26
27
28
29
30
31
# File 'lib/core/filtering/simple_rules/validation/single_rule_against_schema_validator.rb', line 24

def are_rules_valid
  @rules.each do |rule|
    validation_result = @schema_validator.validate_against_schema(@schema, rule)
    return validation_result unless validation_result[:state] == Core::Filtering::ValidationStatus::VALID
  end

  { :state => Core::Filtering::ValidationStatus::VALID, :errors => [] }
end