Provided by: libfirefox-marionette-perl_1.22-1_all bug

NAME

       Firefox::Marionette::Capabilities - Represents Firefox Capabilities retrieved using the Marionette
       protocol

VERSION

       Version 1.22

SYNOPSIS

           use Firefox::Marionette();
           use v5.10;

           my $firefox = Firefox::Marionette->new( capabilities => Firefox::Marionette::Capabilities->new( accept_insecure_certs => 0 ) );
           if ($firefox->capabilities->accept_insecure_certs()) {
               say "Browser will now ignore certificate failures";
           }

DESCRIPTION

       This module handles the implementation of Firefox Capabilities using the Marionette protocol

SUBROUTINES/METHODS

   accept_insecure_certs
       indicates whether untrusted and self-signed TLS certificates are implicitly trusted on navigation for the
       duration of the session.

   browser_name
       returns the browsers name.  For example 'firefox'

   browser_version
       returns the version of firefox <https://firefox.com/>

   enumerate
       This method returns a list of strings describing the capabilities that this version of Firefox supports.

   moz_accessibility_checks
       returns the current accessibility (a11y) value

   moz_build_id
       returns the Firefox BuildId <https://developer.mozilla.org/en-US/docs/Web/API/Navigator/buildID>

   moz_headless
       returns whether the browser is running in headless mode

   moz_process_id
       returns the process id belonging to the browser

   moz_profile
       returns the directory that contains the browsers profile

   moz_shutdown_timeout
       returns the value of moz:shutdownTimeout <https://github.com/mozilla/gecko-
       dev/commit/7aad85995b21bdaf440dc9dad35c5769a35e90eb#diff-48053ba06cc33be0efb2d7256a1affd9> (aka the value
       of config toolkit.asyncshutdown.crash_timeout)

   moz_use_non_spec_compliant_pointer_origin
       returns a boolean value to indicate how the pointer origin for an action command will be calculated.

       With Firefox 59 the calculation will be based on the requirements by the WebDriver specification. This
       means that the pointer origin is no longer computed based on the top and left position of the referenced
       element, but on the in-view center point.

       To temporarily disable the WebDriver conformant behavior use 0 as value for this capability.

       Please note that this capability exists only temporarily, and that it will be removed once all Selenium
       bindings can handle the new behavior.

   moz_webdriver_click
       returns a boolean value to indicate which kind of interactability checks to run when performing a click
       or sending keys to an elements. For Firefoxen prior to version 58.0 some legacy code as imported from an
       older version of FirefoxDriver was in use.

       With Firefox 58 the interactability checks as required by the WebDriver specification are enabled by
       default. This means geckodriver will additionally check if an element is obscured by another when
       clicking, and if an element is focusable for sending keys.

       Because of this change in behaviour, we are aware that some extra errors could be returned. In most cases
       the test in question might have to be updated so it's conform with the new checks. But if the problem is
       located in geckodriver, then please raise an issue in the issue tracker.

       To temporarily disable the WebDriver conformant checks use 0 as value for this capability.

       Please note that this capability exists only temporarily, and that it will be removed once the
       interactability checks have been stabilized.

   new
       accepts a hash as a parameter.  Allowed keys are below;

       •   accept_insecure_certs  -  Indicates whether untrusted and self-signed TLS certificates are implicitly
           trusted on navigation for the duration of the session. Allowed values are 1 or 0.  Default is 0.

       •   moz_accessibility_checks - run a11y checks when  clicking  elements.  Allowed  values  are  1  or  0.
           Default is 0.

       •   moz_headless  -  the  browser  should  be  started  with  the -headless option.  moz_headless is only
           supported in Firefox 56+

       •   moz_use_non_spec_compliant_pointer_origin - a boolean value to indicate how the pointer origin for an
           action command will be calculated.

           With Firefox 59 the calculation will be based on the requirements  by  the  WebDriver  specification.
           This  means  that  the pointer origin is no longer computed based on the top and left position of the
           referenced element, but on the in-view center point.

           To temporarily disable the WebDriver conformant behavior use 0 as value for this capability.

           Please note that this capability exists only temporarily, and  that  it  will  be  removed  once  all
           Selenium bindings can handle the new behavior.

       •   moz_webdriver_click  -  a  boolean value to indicate which kind of interactability checks to run when
           performing a click or sending keys to an elements. For Firefoxen prior to version  58.0  some  legacy
           code as imported from an older version of FirefoxDriver was in use.

           With  Firefox 58 the interactability checks as required by the WebDriver specification are enabled by
           default. This means geckodriver will additionally check if an element is  obscured  by  another  when
           clicking, and if an element is focusable for sending keys.

           Because  of  this change in behaviour, we are aware that some extra errors could be returned. In most
           cases the test in question might have to be updated so it's conform with the new checks. But  if  the
           problem is located in geckodriver, then please raise an issue in the issue tracker.

           To temporarily disable the WebDriver conformant checks use 0 as value for this capability.

           Please  note  that  this  capability  exists  only  temporarily, and that it will be removed once the
           interactability checks have been stabilized.

       •   page_load_strategy - defines the page load strategy for the upcoming browser session.

       •   proxy - describes the proxy setup for the upcoming browser session.

       •   strict_file_interactability - a boolean value to indicate if interactability checks will  be  applied
           to <input type=file>. Allowed values are 1 or 0.  Default is 0.

       •   timeouts - describes the timeouts imposed on certain session operations.

       •   unhandled_prompt_behavior   -   defines  what  firefox  should  do  on  encountering  a  user  prompt
           <https://html.spec.whatwg.org/#user-prompts>.    There   are    a    range    of    allowed    values
           <https://w3c.github.io/webdriver/#dfn-user-prompt-handler>,  including  "dismiss", "accept", "dismiss
           and notify", "accept and notify" and "ignore".

       This method returns a new capabilities object.

   page_load_strategy
       returns the page load  strategy  <https://w3c.github.io/webdriver/#dfn-table-of-page-load-strategies>  to
       use   for   the  duration  of  the  session.  The  page  load  strategy  corresponds  to  the  readyState
       <https://developer.mozilla.org/en-US/docs/Web/API/Document/readyState#Values>  and  may  be  one  of  the
       following values;

       •   normal  -  Wait  for  the  document  and  all sub-resources have finished loading.  The corresponding
           readyState      <https://developer.mozilla.org/en-US/docs/Web/API/Document/readyState#Values>      is
           "complete".   The  load  <https://developer.mozilla.org/en-US/docs/Web/Events/load> event is about to
           fire.  This strategy is the default value.

       •   eager - Wait for the document to have finished loading and have been parsed.  Sub-resources  such  as
           images,    stylesheets    and    frames    are   still   loading.    The   corresponding   readyState
           <https://developer.mozilla.org/en-US/docs/Web/API/Document/readyState#Values> is "interactive".

       •   none   -   return   immediately   after   starting   navigation.    The   corresponding    readyState
           <https://developer.mozilla.org/en-US/docs/Web/API/Document/readyState#Values> is "loading".

   platform_name
       returns the operating system name. For example 'linux', 'darwin' or 'windows_nt'.

   proxy
       returns the current proxy object

   platform_version
       returns the operation system version. For example '4.14.11-300.fc27.x86_64', '17.3.0' or '10.0'

   rotatable
       does this version of firefox <https://firefox.com> have a rotatable screen such as Android Fennec.

   set_window_rect
       returns  true  if  Firefox  fully  supports  setWindowRect  <https://w3c.github.io/webdriver/#dfn-window-
       dimensioning-positioning>, otherwise it returns false.

   strict_file_interactability
       returns the current value of strictFileInteractability <https://w3c.github.io/webdriver/#dfn-strict-file-
       interactability>

   timeouts
       returns the current timeouts object

   unhandled_prompt_behavior
       returns the current value of  unhandledPromptBehavior  <https://w3c.github.io/webdriver/#dfn-user-prompt-
       handler>.

DIAGNOSTICS

       None.

CONFIGURATION AND ENVIRONMENT

       Firefox::Marionette::Capabilities requires no configuration files or environment variables.

DEPENDENCIES

       None.

INCOMPATIBILITIES

       None reported.

BUGS AND LIMITATIONS

       To     report     a     bug,     or     view     the    current    list    of    bugs,    please    visit
       <https://github.com/david-dick/firefox-marionette/issues>

AUTHOR

       David Dick  "<ddick@cpan.org>"

LICENSE AND COPYRIGHT

       Copyright (c) 2021, David Dick "<ddick@cpan.org>". All rights reserved.

       This module is free software; you can redistribute it and/or modify it  under  the  same  terms  as  Perl
       itself. See "perlartistic" in perlartistic.

DISCLAIMER OF WARRANTY

       BECAUSE  THIS  SOFTWARE  IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY FOR THE SOFTWARE, TO THE EXTENT
       PERMITTED BY APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS  AND/OR  OTHER
       PARTIES  PROVIDE  THE  SOFTWARE  "AS  IS"  WITHOUT  WARRANTY  OF  ANY  KIND, EITHER EXPRESSED OR IMPLIED,
       INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND  FITNESS  FOR  A  PARTICULAR
       PURPOSE.  THE  ENTIRE  RISK  AS  TO  THE  QUALITY AND PERFORMANCE OF THE SOFTWARE IS WITH YOU. SHOULD THE
       SOFTWARE PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, REPAIR, OR CORRECTION.

       IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING WILL ANY COPYRIGHT HOLDER,  OR  ANY
       OTHER  PARTY WHO MAY MODIFY AND/OR REDISTRIBUTE THE SOFTWARE AS PERMITTED BY THE ABOVE LICENCE, BE LIABLE
       TO YOU FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES ARISING  OUT  OF
       THE  USE  OR  INABILITY  TO  USE  THE  SOFTWARE  (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING
       RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A FAILURE OF THE SOFTWARE  TO  OPERATE
       WITH  ANY OTHER SOFTWARE), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH
       DAMAGES.

perl v5.32.1                                       2022-02-01             Firefox::Marionette::Capabilities(3pm)