Class: Mxrb::Architecture::Validator
- Inherits:
-
Object
- Object
- Mxrb::Architecture::Validator
- Defined in:
- lib/mxrb/architecture/validator.rb
Defined Under Namespace
Classes: Result
Instance Method Summary collapse
-
#initialize(graph) ⇒ Validator
constructor
A new instance of Validator.
- #validate ⇒ Object
- #validate! ⇒ Object
Constructor Details
#initialize(graph) ⇒ Validator
Returns a new instance of Validator.
10 11 12 |
# File 'lib/mxrb/architecture/validator.rb', line 10 def initialize(graph) @graph = graph end |
Instance Method Details
#validate ⇒ Object
14 15 16 17 18 19 20 21 |
# File 'lib/mxrb/architecture/validator.rb', line 14 def validate errors = [] warnings = [] validate_targets(errors) validate_layers(errors) validate_cycles(errors) Result.new(errors.freeze, warnings.freeze) end |
#validate! ⇒ Object
23 24 25 26 27 28 |
# File 'lib/mxrb/architecture/validator.rb', line 23 def validate! result = validate return result if result.valid? raise ValidationError, "architecture validation failed:\n- #{result.errors.join("\n- ")}" end |