Module: AutomationObject::BluePrint::PageObjectAdapter::ElementHelper
- Included in:
- Element, ElementArray, ElementHash
- Defined in:
- lib/automation_object/blue_print/page_object_adapter/helpers/element_helper.rb
Overview
Helper module for Element composite classes
Instance Method Summary collapse
-
#default_input ⇒ String?
Text input for automatic screen/modal change if needed.
-
#in_iframe ⇒ Symbol?
Element name of iframe element is in or nil if not.
-
#in_iframe? ⇒ Boolean
Whether or not element is in iframe.
- #method_hook?(name) ⇒ Boolean
-
#method_hooks ⇒ Hash<Hook>
Hash of Hook that are defined under the element.
-
#selector_params ⇒ Array<Symbol, String>?
Params as an array for driver find_element args.
Instance Method Details
#default_input ⇒ String?
Returns text input for automatic screen/modal change if needed
11 12 13 |
# File 'lib/automation_object/blue_print/page_object_adapter/helpers/element_helper.rb', line 11 def default_input get_property(:default_input) end |
#in_iframe ⇒ Symbol?
Returns element name of iframe element is in or nil if not
25 26 27 28 29 30 |
# File 'lib/automation_object/blue_print/page_object_adapter/helpers/element_helper.rb', line 25 def in_iframe case hash[:in_iframe] when Symbol, String hash[:in_iframe].to_sym end end |
#in_iframe? ⇒ Boolean
Returns whether or not element is in iframe
33 34 35 |
# File 'lib/automation_object/blue_print/page_object_adapter/helpers/element_helper.rb', line 33 def in_iframe? in_iframe ? true : false end |
#method_hook?(name) ⇒ Boolean
37 38 39 |
# File 'lib/automation_object/blue_print/page_object_adapter/helpers/element_helper.rb', line 37 def method_hook?(name) method_hooks.key?(name) end |
#method_hooks ⇒ Hash<Hook>
Returns hash of Hook that are defined under the element
42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 |
# File 'lib/automation_object/blue_print/page_object_adapter/helpers/element_helper.rb', line 42 def method_hooks return @method_hooks if defined? @method_hooks children = {} hash.each do |key, value| # Skip possible keys that elements can have # Otherwise should be a method hook next if %i[load custom_methods in_iframe css xpath define_elements_by custom_range].include?(key) children[key] = value end @method_hooks = create_hash_children(children, interface: Hook, location: location + '[hook]') @method_hooks end |
#selector_params ⇒ Array<Symbol, String>?
Returns params as an array for driver find_element args
16 17 18 19 20 21 22 |
# File 'lib/automation_object/blue_print/page_object_adapter/helpers/element_helper.rb', line 16 def selector_params if hash[:xpath].is_a?(String) [:xpath, hash[:xpath]] elsif hash[:css].is_a?(String) [:css, hash[:css]] end end |