class Selenium::WebDriver::Elements::FileChooser

Public Class Methods

new(element, browser) click to toggle source
# File lib/selenium/webdriver/elements/file_chooser.rb, line 11
def initialize element, browser
  super element, browser
  unless element.tag_name == 'input' and element.attribute('type') == 'file'
    raise TypeError.new "Can't create Chooser decorator for #{element.inspect}"
  end
end

Public Instance Methods

autoit() click to toggle source
# File lib/selenium/webdriver/elements/file_chooser.rb, line 31
def autoit
  autoit = Thread.new do
    AutoItX3::Window.wait "Open"
    dialog = AutoItX3::Window.new "Open"
    dialog.activate
    dialog.wait_active
    AutoItX3::Edit.new("Open", "", "Edit1").text = filename
    AutoItX3::Button.new("Open", "", "Button1").click
  end
  @element.click
  autoit.join
end
choose_file(filename) click to toggle source
# File lib/selenium/webdriver/elements/file_chooser.rb, line 18
def choose_file filename
  case @browser.browser
    when :chrome then raise "Chrome not supported"
    else @element.send_keys filename
  end
end
populate(data) click to toggle source
# File lib/selenium/webdriver/elements/file_chooser.rb, line 25
def populate data
  if data != nil
    choose_file data
  end
end