Class: ElabsMatchers::Matchers::HaveImage::HaveImageMatcher
- Inherits:
-
Struct
- Object
- Struct
- ElabsMatchers::Matchers::HaveImage::HaveImageMatcher
- Defined in:
- lib/elabs_matchers/matchers/have_image.rb
Instance Attribute Summary collapse
-
#page ⇒ Object
readonly
Returns the value of attribute page.
-
#value ⇒ Object
Returns the value of attribute value.
Instance Method Summary collapse
- #does_not_match?(page) ⇒ Boolean
- #failure_message ⇒ Object (also: #failure_message_for_should)
- #failure_message_when_negated ⇒ Object (also: #failure_message_for_should_not)
- #matches?(page) ⇒ Boolean
Instance Attribute Details
#page ⇒ Object (readonly)
Returns the value of attribute page
9 10 11 |
# File 'lib/elabs_matchers/matchers/have_image.rb', line 9 def page @page end |
#value ⇒ Object
Returns the value of attribute value
8 9 10 |
# File 'lib/elabs_matchers/matchers/have_image.rb', line 8 def value @value end |
Instance Method Details
#does_not_match?(page) ⇒ Boolean
16 17 18 19 |
# File 'lib/elabs_matchers/matchers/have_image.rb', line 16 def does_not_match?(page) @page = page page.has_no_selector?(selector_type, selector) end |
#failure_message ⇒ Object Also known as: failure_message_for_should
21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 |
# File 'lib/elabs_matchers/matchers/have_image.rb', line 21 def images = page.all("img").map do |image| hash = {} hash[:alt] = image[:alt] if image[:alt].present? hash[:src] = image[:src] if image[:src].present? hash[:id] = image[:id] if image[:id].present? hash[:class] = image[:class] if image[:class].present? hash end.to_sentence if ElabsMatchers.image_selector.nil? "expected image alt to be '#{value}' but only had the images: #{images}." else "expected to find image '#{value}' but only had the images: #{images}." end end |
#failure_message_when_negated ⇒ Object Also known as: failure_message_for_should_not
39 40 41 |
# File 'lib/elabs_matchers/matchers/have_image.rb', line 39 def "expected image not to be '#{value}' but it was." end |
#matches?(page) ⇒ Boolean
11 12 13 14 |
# File 'lib/elabs_matchers/matchers/have_image.rb', line 11 def matches?(page) @page = page page.has_selector?(selector_type, selector) end |