Class: Sc4ry::Config::Validator
- Inherits:
-
Object
- Object
- Sc4ry::Config::Validator
- Includes:
- Sc4ry::Constants, Exceptions
- Defined in:
- lib/sc4ry/config.rb
Overview
Configuration validator for Sc4ry default and circuits configuration
Constant Summary
Constants included from Sc4ry::Constants
Sc4ry::Constants::CURRENT_NOTIFIERS, Sc4ry::Constants::DEFAULT_CONFIG, Sc4ry::Constants::DEFAULT_CONFIG_FORMATS
Instance Attribute Summary collapse
-
#config ⇒ Object
readonly
accessor on circuit initial definition from default config or given in construction by from keyword.
-
#input ⇒ Object
readonly
accessor on Circuit definition given for validation.
Instance Method Summary collapse
-
#initialize(definition:, from: DEFAULT_CONFIG) ⇒ Validator
constructor
Validator constructor.
- #result ⇒ Object
-
#validate! ⇒ Object
Validation method, alter by reference the config attribut.
Constructor Details
#initialize(definition:, from: DEFAULT_CONFIG) ⇒ Validator
Validator constructor
29 30 31 32 |
# File 'lib/sc4ry/config.rb', line 29 def initialize(definition:, from: DEFAULT_CONFIG) @config = from @input = definition end |
Instance Attribute Details
#config ⇒ Object (readonly)
Note:
altered by reference to final result mapping with #validate!
accessor on circuit initial definition from default config or given in construction by from keyword
17 18 19 |
# File 'lib/sc4ry/config.rb', line 17 def config @config end |
#input ⇒ Object (readonly)
accessor on Circuit definition given for validation
13 14 15 |
# File 'lib/sc4ry/config.rb', line 13 def input @input end |
Instance Method Details
#result ⇒ Object
19 20 21 |
# File 'lib/sc4ry/config.rb', line 19 def result @config end |
#validate! ⇒ Object
Validation method, alter by reference the config attribut
36 37 38 39 40 41 42 43 |
# File 'lib/sc4ry/config.rb', line 36 def validate! unknown_keys = @input.keys.difference @config.keys raise ConfigError, "Unknown keys in config set : #{unknown_keys}" unless unknown_keys.empty? validate_formats @config.merge! @input format_exceptions end |