Module: PageMagic
- Extended by:
- SingleForwardable
- Defined in:
- lib/page_magic.rb,
lib/page_magic/driver.rb,
lib/page_magic/drivers.rb,
lib/page_magic/element.rb,
lib/page_magic/mapping.rb,
lib/page_magic/session.rb,
lib/page_magic/version.rb,
lib/page_magic/watcher.rb,
lib/page_magic/elements.rb,
lib/page_magic/watchers.rb,
lib/page_magic/utils/url.rb,
lib/page_magic/comparator.rb,
lib/page_magic/exceptions.rb,
lib/page_magic/transitions.rb,
lib/page_magic/utils/string.rb,
lib/page_magic/wait_methods.rb,
lib/page_magic/class_methods.rb,
lib/page_magic/element/query.rb,
lib/page_magic/elements/types.rb,
lib/page_magic/comparator/null.rb,
lib/page_magic/element_context.rb,
lib/page_magic/elements/config.rb,
lib/page_magic/session_methods.rb,
lib/page_magic/comparator/fuzzy.rb,
lib/page_magic/element/locators.rb,
lib/page_magic/element/selector.rb,
lib/page_magic/instance_methods.rb,
lib/page_magic/element/not_found.rb,
lib/page_magic/comparator/literal.rb,
lib/page_magic/element/selector/model.rb,
lib/page_magic/comparator/parameter_map.rb,
lib/page_magic/element/selector/methods.rb,
lib/page_magic/element_definition_builder.rb,
lib/page_magic/elements/inheritance_hooks.rb,
lib/page_magic/element/query/single_result.rb,
lib/page_magic/element/query/multiple_results.rb,
lib/page_magic/element/query/prefetched_result.rb
Overview
module PageMagic - PageMagic is an api for modelling pages in a website.
Defined Under Namespace
Modules: ClassMethods, Elements, InstanceMethods, SessionMethods, Utils, WaitMethods, Watchers Classes: AmbiguousQueryException, Comparator, Driver, Drivers, Element, ElementContext, ElementDefinitionBuilder, ElementMissingException, InvalidConfigurationException, InvalidElementNameException, InvalidMethodNameException, InvalidURLException, Mapping, MatcherInvalidException, NotSupportedException, Session, TimeoutException, Transitions, UndefinedSelectorException, UnsupportedBrowserException, UnsupportedCriteriaException, UnsupportedSelectorException, Watcher
Constant Summary collapse
- VERSION =
'2.0.12'
Class Method Summary collapse
-
.drivers ⇒ Drivers
Registered drivers.
-
.mapping(path = nil, parameters: nil, fragment: nil) ⇒ Object
Create a more complex mapping to identify when a page should be loaded.
-
.session(session: nil, url: nil, application: nil, browser: :rack_test, options: {}) ⇒ Session
Visit this page based on the class level registered url.
Instance Method Summary collapse
-
#matcher ⇒ Mapping
define match critera for loading a page object class.
Class Method Details
.drivers ⇒ Drivers
Returns registered drivers.
28 29 30 |
# File 'lib/page_magic.rb', line 28 def drivers @drivers ||= Drivers.new.tap(&:load) end |
.mapping(path = nil, parameters: nil, fragment: nil) ⇒ Object
Create a more complex mapping to identify when a page should be loaded
44 45 46 |
# File 'lib/page_magic.rb', line 44 def mapping(path = nil, parameters: nil, fragment: nil) Mapping.new(path, parameters: parameters, fragment: fragment) end |
.session(session: nil, url: nil, application: nil, browser: :rack_test, options: {}) ⇒ Session
Visit this page based on the class level registered url
55 56 57 58 59 60 61 62 63 64 65 66 67 68 |
# File 'lib/page_magic.rb', line 55 def session(session: nil, url: nil, application: nil, browser: :rack_test, options: {}) session ||= begin driver = drivers.find(browser) raise UnsupportedBrowserException unless driver Capybara.register_driver browser do |app| driver.build(app, browser: browser, options: ) end Capybara::Session.new(browser, application) end Session.new(session, url) end |