Skip to content

Faker Optional

Actions Status Actions Status Coverage Status

Wrapper over other Faker providers to return their value or None. Useful to create data of type Optional[Any].

Installing

pip install faker-optional

A Simple Example

from faker import Faker
from faker_optional import OptionalProvider

fake = Faker()
fake.add_provider(OptionalProvider)

fake.optional_int()
# None

fake.optional_int()
# 1234

Usage

OptionalProvider uses existent faker providers to create the data, so you can use the provider method arguments.

For example, optional_int uses the python provider pyint, so you can use the min_value, max_value, and step arguments. Every optional_ method accepts the float ratio argument between 0 and 1, with a default value of 0.5 to define what percent of results should be None, a greater value will mean that less results will be None.

Check the supported methods. If you want one that's not included, it's really easy to implement it yourself, please make a pull request.

References

As most open sourced programs, faker-optional is standing on the shoulders of giants, namely:

Pytest
Testing framework, enhanced by the awesome pytest-cases library that made the parametrization of the tests a lovely experience.
Mypy
Python static type checker.
Flakehell
Python linter with lots of checks.
Black
Python formatter to keep a nice style without effort.
Autoimport
Python formatter to automatically fix wrong import statements.
isort
Python formatter to order the import statements.
Pip-tools
Command line tool to manage the dependencies.
Mkdocs
To build this documentation site, with the Material theme.
Safety
To check the installed dependencies for known security vulnerabilities.
Bandit
To finds common security issues in Python code.
Yamlfix
YAML fixer.

Contributing

For guidance on setting up a development environment, and how to make a contribution to faker-optional, see Contributing to faker-optional.


Last update: 2021-04-25