Module: ObjectRepository::ElementConverter::Watir
- Defined in:
- lib/watir-or/converters/element_converter.rb
Class Method Summary collapse
- .build_element(rep_element, repository) ⇒ Object
-
.build_locator(locator) ⇒ Object
Method need for separate frame(:name => “foo”) and frame(:name, “foo”).
- .convert(browser, repository, rep_element) ⇒ Object
Class Method Details
.build_element(rep_element, repository) ⇒ Object
8 9 10 11 12 13 14 15 16 |
# File 'lib/watir-or/converters/element_converter.rb', line 8 def self.build_element(rep_element, repository) parent = "" unless rep_element.locator[:parent].nil? parent = build_element(repository.find(rep_element.locator[:parent]), repository) + "." end locator = rep_element.locator.dup locator.delete(:parent) parent << "%s(%s)" % [rep_element.type, build_locator(locator)] end |
.build_locator(locator) ⇒ Object
Method need for separate frame(:name => “foo”) and frame(:name, “foo”). Because frame with multiply conditions doesn’t work
20 21 22 23 24 25 26 |
# File 'lib/watir-or/converters/element_converter.rb', line 20 def self.build_locator(locator) if locator.length > 1 locator.inspect.gsub(/(^\{|\}$)/, "") else ":%s,%s" % [locator.keys.first, locator[locator.keys.first].inspect] end end |
.convert(browser, repository, rep_element) ⇒ Object
4 5 6 |
# File 'lib/watir-or/converters/element_converter.rb', line 4 def self.convert(browser, repository, rep_element) eval("browser.#{build_element(rep_element, repository)}") end |