module Cello::PageObjects::ElementHelper

Private Instance Methods

define_extras(name, type) click to toggle source
# File lib/cello/pageobjects/html_elements/element_helper.rb, line 22
def define_extras(name, type)
  #include LogHelper

  define_method "#{name}_exit_wait?" do
    send(name).visible? 
  end

  define_method "#{name}_get_text" do
    send(name).value
  end

  define_method "#{name}_is_enable?" do
    #logger(name, __method__, type) {
    send(name).enabled? 
    #}
  end
  define_method "#{name}_is_real?" do
    #logger(name, __method__, type, "Foo") {
    send(name).exists?        
    #}
  end
  define_method "#{name}_click" do
    #logger(name, __method__, type) {
    send(name).click
    #}
  end
  define_method "#{name}_is_visible?" do
    #logger(name, __method__, type) {
    send(name).visible?
    #}
  end
  define_method "#{name}_right_click" do
    #logger(name, __method__, type) {
    send(name).right_click
    #}
  end

  define_method "#{name}_get" do |att|
    #logger(name, __method__, type) {
    send(name).attribute_value(att)
    #}
  end

  define_method "#{name}_wait_exists_for" do |timeout|
    timeout.times do 
      if send(name).exists?
        found = true
        break 
      end
      sleep 1
    end
    send(name).exists?
  end

  define_method "#{name}_wait_visible_for" do |timeout|
    timeout.times do 
      if send(name).visible?
        break 
      end
      sleep 1
    end
    send(name).visible?
  end

  method_name = "define_extras_for_#{type}"
  send(method_name, name) if respond_to? method_name
end
element(name, type, *args) click to toggle source
# File lib/cello/pageobjects/html_elements/element_helper.rb, line 11
def element(name, type, *args)        
  class_eval do
    define_method name do
      engine.browser.send(type, *args)
    end

    define_extras(name, type)
  end
end