Skip to main content

Mozilla Firefox Accounts Page Object Model

Project description

Selenium WebDriver compatible page-object model and utilities for Firefox Accounts

License PyPI Travis Issues Updates Python 3

Overview

This package contains a utility to create a test Firefox Account on either the dev or prod instance of Firefox Accounts, as well as a set of page objects that can be used to interact with Firefox Accounts’ sign in screens.

Installation

To install FxAPOM:

$ pip install fxapom

Usage

To create a test Firefox Account, simply create an instance of the FxATestAccount object. You can pass the url for the Firefox Accounts API server into the constructor or, if you know you want to create a development Account, you can omit that argument.

There are two constants available to you to specify the url for either the development environment or the production environment, which are:

  • fxapom.DEV_URL - the url for the development environment

  • fxapom.PROD_URL - the url for the production environment

Example of creating an account on the development environment, using the default:

from fxapom.fxapom import FxATestAccount
account = FxATestAccount()

Example of creating an account on the development environment, specifying the DEV_URL:

from fxapom.fxapom import DEV_URL, FxATestAccount
account = FxATestAccount(DEV_URL)

To sign in via Firefox Accounts, use the sign_in method in the WebDriverFxA object, passing in the email address and password:

from fxapom.fxapom import WebDriverFxA
fxa = WebDriverFxA(selenium)
fxa.sign_in(email_address, password)

Note that we are passing selenium into the constructor of WebDriverFxA, which it then uses to interact with the Firefox Accounts web pages.

To create an account and then use it to sign in, use both tools described above:

from fxapom.fxapom import FxATestAccount, WebDriverFxA
account = FxATestAccount()
fxa = WebDriverFxA(selenium)
fxa.sign_in(account.email, account.password)

Contributing

Fork the repository and submit PRs with bug fixes and enhancements, contributions are very welcome. You can run the tests using Docker:

$ docker build -t fxapom .
$ docker run -it fxapom tox

Resources

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

fxapom-1.10.2.tar.gz (14.4 kB view details)

Uploaded Source

Built Distribution

fxapom-1.10.2-py3-none-any.whl (5.8 kB view details)

Uploaded Python 3

File details

Details for the file fxapom-1.10.2.tar.gz.

File metadata

  • Download URL: fxapom-1.10.2.tar.gz
  • Upload date:
  • Size: 14.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No

File hashes

Hashes for fxapom-1.10.2.tar.gz
Algorithm Hash digest
SHA256 5fb902afaaa9d9b82b5d1d54b9e19f1f4c9be128deb3b0e0ac82a9303f76000f
MD5 d86fb224dc10270cf70c3a285fc5487a
BLAKE2b-256 2823aa5424acf8cc38b8a4862cab54af52dbaa1f040972c47f291c844783c171

See more details on using hashes here.

File details

Details for the file fxapom-1.10.2-py3-none-any.whl.

File metadata

File hashes

Hashes for fxapom-1.10.2-py3-none-any.whl
Algorithm Hash digest
SHA256 56fdff0a0f0ea58831337e3a859971f98c59fd028ebc14baa8e37ae08a40efa0
MD5 ae787a587a54e2bdc95af7e3e1ff2313
BLAKE2b-256 e47934bd73d09af5dbee011ec47df49b345394e343e0838ce5a14fb51e902d6b

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page