summaryrefslogtreecommitdiffstats
path: root/testing/marionette/puppeteer/firefox/docs/index.rst
diff options
context:
space:
mode:
Diffstat (limited to 'testing/marionette/puppeteer/firefox/docs/index.rst')
-rw-r--r--testing/marionette/puppeteer/firefox/docs/index.rst85
1 files changed, 85 insertions, 0 deletions
diff --git a/testing/marionette/puppeteer/firefox/docs/index.rst b/testing/marionette/puppeteer/firefox/docs/index.rst
new file mode 100644
index 000000000..d77ac5968
--- /dev/null
+++ b/testing/marionette/puppeteer/firefox/docs/index.rst
@@ -0,0 +1,85 @@
+.. py:currentmodule:: firefox_puppeteer
+
+Firefox Puppeteer
+=================
+
+`Firefox Puppeteer`_ is a library built on top of the `Marionette Python client`_.
+It aims to make automation of Firefox's browser UI simpler. It does **not**
+make sense to use Firefox Puppeteer if:
+
+* You are manipulating something other than Firefox (like Firefox OS)
+* You are only manipulating elements in content scope (like a webpage)
+
+Roughly speaking, Firefox Puppeteer provides a library to manipulate each
+visual section of Firefox's browser UI. For example, there are different
+libraries for the tab bar, the navigation bar, etc.
+
+.. _Firefox Puppeteer: http://firefox-puppeteer.readthedocs.io/
+.. _Marionette Python client: http://marionette-client.readthedocs.org/
+
+Installation
+------------
+
+For end-users Firefox Puppeteer can be easily installed as a `Python package`_
+from PyPI. If you want to contribute to the project we propose that you clone
+the `mozilla-central`_ repository and run the following commands::
+
+$ cd testing/puppeteer/firefox
+$ python setup.py develop
+
+In both cases all necessary files including all dependencies will be installed.
+
+.. _Python package: https://pypi.python.org/pypi/firefox-puppeteer
+.. _mozilla-central: https://hg.mozilla.org/mozilla-central
+
+Versioning
+----------
+
+Puppeteer versions as regularly released from the Python source code, will follow
+a specific versioning schema. It means the major version number will always
+be identical with the supported Firefox version. Minor releases - the second part
+of the version number - are done throughout the life-cycle of a Firefox version
+when Puppeteer itself needs API changes for back-end and front-end modules. The
+last part of the version number is the patch level, and is only used for bugfix
+releases without any API changes.
+
+Examples:
+
+ firefox_puppeteer_45.0.0 - First release for Firefox 45.0 and Firefox 45.xESR
+ firefox_puppeteer_46.2.0 - Second release for Firefox 46.0 caused by API changes
+ firefox_puppeteer_47.0.1 - First bugfix release for the new Firefox 47.0 support
+
+
+Libraries
+---------
+
+The following libraries are currently implemented. More will be added in the
+future. Each library is available from an instance of the FirefoxTestCase class.
+
+.. toctree::
+
+ ui/about_window/window
+ ui/deck
+ ui/menu
+ ui/pageinfo/window
+ ui/browser/notifications
+ ui/browser/tabbar
+ ui/browser/toolbars
+ ui/browser/window
+ ui/update_wizard/dialog
+ ui/windows
+ api/appinfo
+ api/keys
+ api/l10n
+ api/places
+ api/security
+ api/software_update
+ api/utils
+
+
+Indices and tables
+==================
+
+* :ref:`genindex`
+* :ref:`modindex`
+* :ref:`search`