Class: Fontisan::Validators::Validator
- Inherits:
-
Object
- Object
- Fontisan::Validators::Validator
- Defined in:
- lib/fontisan/validators/validator.rb
Overview
Base class for all validators using block-based DSL
This class provides a declarative DSL for defining validation checks and an execution engine that runs those checks against font files. Subclasses define their validation logic by implementing define_checks.
Direct Known Subclasses
Instance Method Summary collapse
-
#initialize ⇒ Validator
constructor
Initialize validator and define checks.
-
#validate(font) ⇒ ValidationReport
Validate a font and return a ValidationReport.
Constructor Details
#initialize ⇒ Validator
Initialize validator and define checks
32 33 34 35 36 |
# File 'lib/fontisan/validators/validator.rb', line 32 def initialize @checks = [] @current_table_context = nil define_checks end |
Instance Method Details
#validate(font) ⇒ ValidationReport
Validate a font and return a ValidationReport
42 43 44 45 46 47 48 49 50 51 52 53 |
# File 'lib/fontisan/validators/validator.rb', line 42 def validate(font) start_time = Time.now all_results = [] @checks.each do |check_def| result = execute_check(font, check_def) all_results << result end elapsed = Time.now - start_time build_report(font, all_results, elapsed) end |