Skip to main content

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

Metadata

Release files for fxapom 1.10.2

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for fxapom 1.10.2
File Size Uploaded
fxapom-1.10.2.tar.gz 14.4 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for fxapom 1.10.2
File Interpreter ABI Platform
fxapom-1.10.2-py3-none-any.whl Python 3 none any Details

Total release size: 20.2 kB

Release files / fxapom-1.10.2.tar.gz

Download URL fxapom-1.10.2.tar.gz
Size 14.4 kB
Tags Source
SHA-256 checksum
How to use checksums
5fb902afaaa9d9b82b5d1d54b9e19f1f4c9be128deb3b0e0ac82a9303f76000f
BLAKE2b-256 checksum
How to use checksums
2823aa5424acf8cc38b8a4862cab54af52dbaa1f040972c47f291c844783c171
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No

Release files / fxapom-1.10.2-py3-none-any.whl

Download URL fxapom-1.10.2-py3-none-any.whl
Size 5.8 kB
Tags Python 3
SHA-256 checksum
How to use checksums
56fdff0a0f0ea58831337e3a859971f98c59fd028ebc14baa8e37ae08a40efa0
BLAKE2b-256 checksum
How to use checksums
e47934bd73d09af5dbee011ec47df49b345394e343e0838ce5a14fb51e902d6b
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No

Release history Release notifications | RSS feed

This release

1.10.2 This release

2 release files

1.10.0

2 release files

1.9.1

2 release files

1.9.0

2 release files

1.8.0

2 release files

1.7.2

2 release files

1.7.1

2 release files

1.7

2 release files

1.6

2 release files

1.5

2 release files

1.4

1 release file

1.3.1

1 release file

1.3

1 release file

1.2

1 release file

1.1

1.0

1 release file

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page