Class: ActiveStorageValidations::Matchers::AttachedValidatorMatcher
- Inherits:
-
Object
- Object
- ActiveStorageValidations::Matchers::AttachedValidatorMatcher
- Includes:
- ASVActiveStorageable, ASVAttachable, ASVContextable, ASVExceptOnable, 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 ASVExceptOnable
#except_on, #initialize_except_onable
Methods included from ASVContextable
Constructor Details
#initialize(attribute_name) ⇒ AttachedValidatorMatcher
Returns a new instance of AttachedValidatorMatcher.
26 27 28 29 30 31 32 |
# File 'lib/active_storage_validations/matchers/attached_validator_matcher.rb', line 26 def initialize(attribute_name) initialize_contextable initialize_except_onable initialize_rspecable @attribute_name = attribute_name end |
Instance Method Details
#description ⇒ Object
34 35 36 |
# File 'lib/active_storage_validations/matchers/attached_validator_matcher.rb', line 34 def description "validate that :#{@attribute_name} must be attached" end |
#failure_message ⇒ Object
38 39 40 |
# File 'lib/active_storage_validations/matchers/attached_validator_matcher.rb', line 38 def "is expected to validate attachment of :#{@attribute_name}" end |
#matches?(subject) ⇒ Boolean
42 43 44 45 46 47 48 49 50 51 |
# File 'lib/active_storage_validations/matchers/attached_validator_matcher.rb', line 42 def matches?(subject) @subject = subject.is_a?(Class) ? subject.new : subject is_a_valid_active_storage_attribute? && is_context_valid? && is_except_on_valid? && && is_valid_when_file_attached? && is_invalid_when_file_not_attached? end |