Class: Watir::Provider
Overview
Extend Watir with a Provider class to determine which driver type is supported by the remote DRb process. This returns the DRb front object.
Instance Attribute Summary collapse
-
#browser ⇒ Object
readonly
Returns the value of attribute browser.
Instance Method Summary collapse
-
#initialize(driver = nil) ⇒ Provider
constructor
A new instance of Provider.
- #new_browser(browser_type = 'firefox') ⇒ Object
- #renew_provider ⇒ Object
Constructor Details
#initialize(driver = nil) ⇒ Provider
Returns a new instance of Provider.
21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 |
# File 'lib/provider.rb', line 21 def initialize(driver=nil) case driver.downcase.to_sym when :safariwatir require 'safariwatir' @browser = Watir::Safari when :firewatir require 'firewatir' @browser = FireWatir::Firefox when :watir require 'watir' @browser = Watir::IE when :webdriver require 'watir-webdriver' @browser = Watir::Browser when :webdriver_performance require 'watir-webdriver' require 'watir-webdriver-performance' @browser = Watir::Browser when :webdriver_remote require 'watir-webdriver' require 'selenium-webdriver' @browser = Watir::Browser when :selenium require 'selenium-webdriver' @browser = Selenium::WebDriver end end |
Instance Attribute Details
#browser ⇒ Object (readonly)
Returns the value of attribute browser.
19 20 21 |
# File 'lib/provider.rb', line 19 def browser @browser end |
Instance Method Details
#new_browser(browser_type = 'firefox') ⇒ Object
49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 |
# File 'lib/provider.rb', line 49 def new_browser(browser_type='firefox') case @browser.inspect when "Selenium::WebDriver" if browser_type == :htmlunit caps = Selenium::WebDriver::Remote::Capabilities.htmlunit(:javascript_enabled => true) @browser.for(:remote, :url => "http://127.0.0.1:4444/wd/hub", :desired_capabilities => caps) else @browser.for browser_type.to_sym end when "Watir::Browser" if @browser_type == :htmlunit caps = Selenium::WebDriver::Remote::Capabilities.htmlunit(:javascript_enabled => true) @browser.new(:remote, :url => "http://127.0.0.1:4444/wd/hub", :desired_capabilities => caps) else @browser.new browser_type.to_sym end when "Watir::Safari" @browser.new when "FireWatir::Firefox" @browser.new when "Watir::IE" @browser.new else @browser.new end end |
#renew_provider ⇒ Object
76 77 78 |
# File 'lib/provider.rb', line 76 def renew_provider self.class.superclass end |