Sha256: d6517752104b4a246b824fad7812a0549dfd047519faea2774d9b2320ff37395
Contents?: true
Size: 1.33 KB
Versions: 3
Compression:
Stored size: 1.33 KB
Contents
module PageObject module Platforms module Watir def self.create_page_object(browser) browser = selenium_browser(browser) unless watir?(browser) return Watir::PageObject.new(browser) end def self.is_for?(browser) require 'watir' watir?(browser) || selenium?(browser) end def self.browser_for root return watir_browser(root) if watir?(root) return selenium_browser(root) if selenium?(root) nil end def self.root_element_for root Elements::Element.new(root) if is_for?(root) end def self.browser_root_for browser browser.element end private def self.watir_browser(root) return root if root.is_a?(::Watir::Browser) root.browser end def self.selenium_browser(root) return ::Watir::Browser.new(root) if root.is_a?(::Selenium::WebDriver::Driver) ::Watir::Browser.new(Selenium::WebDriver::Driver.new(root.send(:bridge))) end def self.watir?(browser) browser.is_a?(::Watir::Browser) || browser.is_a?(::Watir::HTMLElement) end def self.selenium?(browser) browser.is_a?(::Selenium::WebDriver::Driver) || browser.is_a?(::Selenium::WebDriver::Element) end end end end
Version data entries
3 entries across 3 versions & 2 rubygems
Version | Path |
---|---|
centric_page_object-2.3.1 | lib/page-object/platforms/watir.rb |
page-object-2.3.1 | lib/page-object/platforms/watir.rb |
page-object-2.3.0 | lib/page-object/platforms/watir.rb |