From 6d7ba58f880be618ade07f8ea080fe8c4bf8a896 Mon Sep 17 00:00:00 2001 From: cyfraeviolae Date: Wed, 3 Apr 2024 03:10:44 -0400 Subject: venv --- .../site-packages/faker/contrib/pytest/plugin.py | 38 ++++++++++++++++++++++ 1 file changed, 38 insertions(+) create mode 100644 venv/lib/python3.11/site-packages/faker/contrib/pytest/plugin.py (limited to 'venv/lib/python3.11/site-packages/faker/contrib/pytest/plugin.py') diff --git a/venv/lib/python3.11/site-packages/faker/contrib/pytest/plugin.py b/venv/lib/python3.11/site-packages/faker/contrib/pytest/plugin.py new file mode 100644 index 0000000..dab476b --- /dev/null +++ b/venv/lib/python3.11/site-packages/faker/contrib/pytest/plugin.py @@ -0,0 +1,38 @@ +import pytest + +from faker import Faker +from faker.config import DEFAULT_LOCALE + +DEFAULT_SEED = 0 + + +@pytest.fixture(scope="session", autouse=True) +def _session_faker(request): + """Fixture that stores the session level ``Faker`` instance. + + This fixture is internal and is only meant for use within the project. + Third parties should instead use the ``faker`` fixture for their tests. + """ + if "faker_session_locale" in request.fixturenames: + locale = request.getfixturevalue("faker_session_locale") + else: + locale = [DEFAULT_LOCALE] + return Faker(locale=locale) + + +@pytest.fixture() +def faker(request): + """Fixture that returns a seeded and suitable ``Faker`` instance.""" + if "faker_locale" in request.fixturenames: + locale = request.getfixturevalue("faker_locale") + fake = Faker(locale=locale) + else: + fake = request.getfixturevalue("_session_faker") + + seed = DEFAULT_SEED + if "faker_seed" in request.fixturenames: + seed = request.getfixturevalue("faker_seed") + fake.seed_instance(seed=seed) + fake.unique.clear() + + return fake -- cgit v1.2.3