Module: Selenium::WebDriver::DriverExtensions::UploadsFiles Private
- Included in:
- Remote::Driver
- Defined in:
- rb/lib/selenium/webdriver/common/driver_extensions/uploads_files.rb
This module is part of a private API. You should avoid using this module if possible, as it may be removed or be changed in the future.
Instance Method Summary collapse
-
#file_detector=(detector) ⇒ Object
Set the file detector to pass local files to a remote WebDriver.
Instance Method Details
#file_detector=(detector) ⇒ Object
Set the file detector to pass local files to a remote WebDriver.
The detector is an object that responds to #call, and when called will determine if the given string represents a file. If it does, the path to the file on the local file system should be returned, otherwise nil or false.
Example:
driver = Selenium::WebDriver.for :remote
driver.file_detector = lambda do |args|
# args => ["/path/to/file"]
str = args.first.to_s
str if File.exist?(str)
end
driver.find_element(:id => "upload").send_keys "/path/to/file"
By default, no file detection is performed.
52 53 54 55 56 |
# File 'rb/lib/selenium/webdriver/common/driver_extensions/uploads_files.rb', line 52 def file_detector=(detector) raise ArgumentError, 'detector must respond to #call' unless detector.nil? || detector.respond_to?(:call) bridge.file_detector = detector end |