Class: Aequitas::Rule::Length::Range
- Inherits:
-
Aequitas::Rule::Length
- Object
- Aequitas::Rule
- Aequitas::Rule::Length
- Aequitas::Rule::Length::Range
- Defined in:
- lib/aequitas/rule/length/range.rb
Instance Attribute Summary collapse
-
#range ⇒ Object
readonly
Returns the value of attribute range.
Attributes inherited from Aequitas::Rule
#attribute_name, #custom_message, #guard, #skip_condition
Attributes included from ValueObject
Instance Method Summary collapse
-
#initialize(attribute_name, options) ⇒ Range
constructor
A new instance of Range.
-
#valid_length?(length) ⇒ String, NilClass
private
Validate the value length is within expected range.
- #violation_data(resource) ⇒ Object
- #violation_type(resource) ⇒ Object
Methods inherited from Aequitas::Rule::Length
rules_for, #valid?, #value_length
Methods inherited from Aequitas::Rule
#attribute_value, #execute?, rules_for, #skip?, #validate, #violation_info, #violation_values
Methods included from ValueObject
Constructor Details
#initialize(attribute_name, options) ⇒ Range
Returns a new instance of Range.
14 15 16 17 18 |
# File 'lib/aequitas/rule/length/range.rb', line 14 def initialize(attribute_name, ) super @range = .fetch(:range) end |
Instance Attribute Details
#range ⇒ Object (readonly)
Returns the value of attribute range.
12 13 14 |
# File 'lib/aequitas/rule/length/range.rb', line 12 def range @range end |
Instance Method Details
#valid_length?(length) ⇒ String, NilClass
This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.
Validate the value length is within expected range
37 38 39 |
# File 'lib/aequitas/rule/length/range.rb', line 37 def valid_length?(length) range.include?(length) end |
#violation_data(resource) ⇒ Object
24 25 26 |
# File 'lib/aequitas/rule/length/range.rb', line 24 def violation_data(resource) [ [ :min, range.begin ], [ :max, range.end ] ] end |
#violation_type(resource) ⇒ Object
20 21 22 |
# File 'lib/aequitas/rule/length/range.rb', line 20 def violation_type(resource) :length_between end |