module Watir::Locators::ClassHelpers

Public Instance Methods

class_from_string(string) click to toggle source
# File lib/watir/locators.rb, line 57
def class_from_string(string)
  Watir.const_get(string) if Watir.const_defined?(string)
end
element_class_name() click to toggle source
# File lib/watir/locators.rb, line 61
def element_class_name
  element_class.to_s.split('::').last
end
element_matcher_class() click to toggle source
# File lib/watir/locators.rb, line 43
def element_matcher_class
  class_from_string("#{browser.locator_namespace}::#{element_class_name}::Matcher") ||
    class_from_string("Watir::Locators::#{element_class_name}::Matcher") ||
    class_from_string("#{browser.locator_namespace}::Element::Matcher") ||
    Locators::Element::Matcher
end
locator() click to toggle source
# File lib/watir/locators.rb, line 69
def locator
  @element_matcher ||= element_matcher_class.new(@query_scope, @selector.dup)
  @locator ||= locator_class.new(@element_matcher)
end
locator_class() click to toggle source
# File lib/watir/locators.rb, line 36
def locator_class
  class_from_string("#{browser.locator_namespace}::#{element_class_name}::Locator") ||
    class_from_string("Watir::Locators::#{element_class_name}::Locator") ||
    class_from_string("#{browser.locator_namespace}::Element::Locator") ||
    Locators::Element::Locator
end
selector_builder() click to toggle source
# File lib/watir/locators.rb, line 65
def selector_builder
  @selector_builder ||= selector_builder_class.new(element_class.attribute_list, @query_scope)
end
selector_builder_class() click to toggle source
# File lib/watir/locators.rb, line 50
def selector_builder_class
  class_from_string("#{browser.locator_namespace}::#{element_class_name}::SelectorBuilder") ||
    class_from_string("Watir::Locators::#{element_class_name}::SelectorBuilder") ||
    class_from_string("#{browser.locator_namespace}::Element::SelectorBuilder") ||
    Locators::Element::SelectorBuilder
end