Module: AutomationObject::StepDefinitions::ElementHash
- Defined in:
- lib/automation_object/step_definitions/support/element_hash.rb
Overview
Element hash module for iterating through an hash
Class Method Summary collapse
Class Method Details
.iterate_and_do(screen, modal, element, key, low_range, high_range) ⇒ Object
8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 |
# File 'lib/automation_object/step_definitions/support/element_hash.rb', line 8 def iterate_and_do(screen, modal, element, key, low_range, high_range) element_hash = AutomationObject::Framework.get.screen(screen).modal(modal).element(element) assert element_hash.is_a?(Hash) return range(element_hash, low_range, high_range) if low_range && high_range case key when 'all' element_hash.each_value do |sub_element| yield sub_element end when 'random' yield element_hash[element_hash.keys[rand(0..(element_hash.keys.length - 1))]] when 'first' yield element_hash[element_hash.keys[0]] when 'last' yield element_hash[element_hash.keys[element_hash.keys.length - 1]] else yield element_hash[key.to_s] end end |