Module: PageObject::Platforms::SeleniumWebDriver

Defined in:
lib/page-object/platforms/selenium_webdriver/element.rb,
lib/page-object/platforms/selenium_webdriver.rb,
lib/page-object/platforms/selenium_webdriver/form.rb,
lib/page-object/platforms/selenium_webdriver/link.rb,
lib/page-object/platforms/selenium_webdriver/image.rb,
lib/page-object/platforms/selenium_webdriver/table.rb,
lib/page-object/platforms/selenium_webdriver/button.rb,
lib/page-object/platforms/selenium_webdriver/check_box.rb,
lib/page-object/platforms/selenium_webdriver/table_row.rb,
lib/page-object/platforms/selenium_webdriver/text_area.rb,
lib/page-object/platforms/selenium_webdriver/file_field.rb,
lib/page-object/platforms/selenium_webdriver/text_field.rb,
lib/page-object/platforms/selenium_webdriver/page_object.rb,
lib/page-object/platforms/selenium_webdriver/select_list.rb,
lib/page-object/platforms/selenium_webdriver/ordered_list.rb,
lib/page-object/platforms/selenium_webdriver/radio_button.rb,
lib/page-object/platforms/selenium_webdriver/unordered_list.rb,
lib/page-object/platforms/selenium_webdriver/surrogate_selenium_element.rb

Overview

Selenium implementation of the common functionality found across all elements

Defined Under Namespace

Modules: Button, CheckBox, Element, FileField, Form, Image, Link, OrderedList, RadioButton, SelectList, Table, TableRow, TextArea, TextField, UnorderedList Classes: PageObject, SurrogateSeleniumElement

Class Method Summary collapse

Class Method Details

.browser_for(root) ⇒ Object



14
15
16
17
# File 'lib/page-object/platforms/selenium_webdriver.rb', line 14

def self.browser_for root
  return root if root.is_a?(::Selenium::WebDriver::Driver)
  Selenium::WebDriver::Driver.new(root.send(:bridge))
end

.browser_root_for(browser) ⇒ Object



23
24
25
# File 'lib/page-object/platforms/selenium_webdriver.rb', line 23

def self.browser_root_for browser
  browser.find_element(tag_name: 'html')
end

.create_page_object(browser) ⇒ Object



5
6
7
# File 'lib/page-object/platforms/selenium_webdriver.rb', line 5

def self.create_page_object(browser)
  SeleniumWebDriver::PageObject.new(browser)
end

.is_for?(browser) ⇒ Boolean

Returns:

  • (Boolean)


9
10
11
12
# File 'lib/page-object/platforms/selenium_webdriver.rb', line 9

def self.is_for?(browser)
  require 'selenium-webdriver'
  browser.is_a?(::Selenium::WebDriver::Driver) || browser.is_a?(::Selenium::WebDriver::Element)
end

.root_element_for(root) ⇒ Object



19
20
21
# File 'lib/page-object/platforms/selenium_webdriver.rb', line 19

def self.root_element_for root
  Elements::Element.new root, platform: :selenium_webdriver if root.is_a?(::Selenium::WebDriver::Element)
end