Module: MediawikiSelenium::PageFactory
- Includes:
- PageObject::PageFactory
- Defined in:
- lib/mediawiki_selenium/page_factory.rb
Overview
Handles on-demand browser instantiation and assignment of the @browser
instance variable before delegating to PageObject::PageFactory methods.
Instance Method Summary collapse
-
#on_page(page_class, params = { using_params: {} }, visit = false) ⇒ Object
(also: #on)
Instantiates a new browser before delegating to
PageObject::PageFactory#on_page.
Instance Method Details
#on_page(page_class, params = { using_params: {} }, visit = false) ⇒ Object Also known as: on
Instantiates a new browser before delegating to
PageObject::PageFactory#on_page. All page URLs are also qualified
using Environment#wiki_url.
16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 |
# File 'lib/mediawiki_selenium/page_factory.rb', line 16 def on_page(page_class, params = { using_params: {} }, visit = false) @browser = browser if visit || !defined?(@browser) super(page_class, params, false) do |page| if page.respond_to?(:goto) wiki_url = method(:wiki_url) page.define_singleton_method(:page_url_value) do wiki_url.call(super()) end page.goto if visit end yield page if block_given? end end |