Class: WorkflowTemplate::Adapters::Validation::DryValidation::Validator
- Inherits:
-
Object
- Object
- WorkflowTemplate::Adapters::Validation::DryValidation::Validator
- Extended by:
- Validation::Adapter::Abstract::Validator
- Defined in:
- lib/workflow_template/adapters/validation/dry_validation/validator.rb
Instance Method Summary collapse
- #call(input, context: {}) ⇒ Object
- #describe ⇒ Object
-
#initialize(contract_class) ⇒ Validator
constructor
A new instance of Validator.
Methods included from Validation::Adapter::Abstract::Validator
Constructor Details
#initialize(contract_class) ⇒ Validator
Returns a new instance of Validator.
14 15 16 |
# File 'lib/workflow_template/adapters/validation/dry_validation/validator.rb', line 14 def initialize(contract_class) @contract_class = contract_class end |
Instance Method Details
#call(input, context: {}) ⇒ Object
18 19 20 21 22 23 24 25 26 27 28 29 |
# File 'lib/workflow_template/adapters/validation/dry_validation/validator.rb', line 18 def call(input, context: {}) return Failure.new(self, code: :input_null) if input.nil? result = contract(context).call(input) return WorkflowTemplate::Validation::Validator::Result::Success if result.success? Failure.new( self, code: :input_invalid, data: result ) end |
#describe ⇒ Object
31 32 33 |
# File 'lib/workflow_template/adapters/validation/dry_validation/validator.rb', line 31 def describe 'contract to be satisfied' end |