Class: ActiveStorageValidations::Matchers::AttachedValidatorMatcher
- Inherits:
-
Object
- Object
- ActiveStorageValidations::Matchers::AttachedValidatorMatcher
- Includes:
- ASVActiveStorageable, ASVAttachable, ASVContextable, ASVMessageable, ASVRspecable, ASVValidatable
- Defined in:
- lib/active_storage_validations/matchers/attached_validator_matcher.rb
Instance Method Summary collapse
- #description ⇒ Object
- #failure_message ⇒ Object
-
#initialize(attribute_name) ⇒ AttachedValidatorMatcher
constructor
A new instance of AttachedValidatorMatcher.
- #matches?(subject) ⇒ Boolean
Methods included from ASVRspecable
#failure_message_when_negated, #initialize_rspecable
Methods included from ASVMessageable
#initialize_messageable, #with_message
Methods included from ASVContextable
Constructor Details
#initialize(attribute_name) ⇒ AttachedValidatorMatcher
Returns a new instance of AttachedValidatorMatcher.
24 25 26 27 28 29 |
# File 'lib/active_storage_validations/matchers/attached_validator_matcher.rb', line 24 def initialize(attribute_name) initialize_contextable initialize_rspecable @attribute_name = attribute_name end |
Instance Method Details
#description ⇒ Object
31 32 33 |
# File 'lib/active_storage_validations/matchers/attached_validator_matcher.rb', line 31 def description "validate that :#{@attribute_name} must be attached" end |
#failure_message ⇒ Object
35 36 37 |
# File 'lib/active_storage_validations/matchers/attached_validator_matcher.rb', line 35 def "is expected to validate attachment of :#{@attribute_name}" end |
#matches?(subject) ⇒ Boolean
39 40 41 42 43 44 45 46 47 |
# File 'lib/active_storage_validations/matchers/attached_validator_matcher.rb', line 39 def matches?(subject) @subject = subject.is_a?(Class) ? subject.new : subject is_a_valid_active_storage_attribute? && is_context_valid? && && is_valid_when_file_attached? && is_invalid_when_file_not_attached? end |