summaryrefslogtreecommitdiff
path: root/tests/conftest.py
diff options
context:
space:
mode:
Diffstat (limited to 'tests/conftest.py')
-rw-r--r--tests/conftest.py29
1 files changed, 29 insertions, 0 deletions
diff --git a/tests/conftest.py b/tests/conftest.py
index 5b14b1c..0506a83 100644
--- a/tests/conftest.py
+++ b/tests/conftest.py
@@ -1,6 +1,19 @@
import os
import pytest
+try:
+ import zoneinfo
+except ModuleNotFoundError:
+ try:
+ from backports import zoneinfo
+ except ImportError:
+ zoneinfo = None
+
+try:
+ import pytz
+except ModuleNotFoundError:
+ pytz = None
+
@pytest.fixture
def os_environ(monkeypatch):
@@ -16,3 +29,19 @@ def pytest_generate_tests(metafunc):
from babel.localedata import locale_identifiers
metafunc.parametrize("locale", list(locale_identifiers()))
break
+
+
+@pytest.fixture(params=["pytz.timezone", "zoneinfo.ZoneInfo"], scope="package")
+def timezone_getter(request):
+ if request.param == "pytz.timezone":
+ if pytz:
+ return pytz.timezone
+ else:
+ pytest.skip("pytz not available")
+ elif request.param == "zoneinfo.ZoneInfo":
+ if zoneinfo:
+ return zoneinfo.ZoneInfo
+ else:
+ pytest.skip("zoneinfo not available")
+ else:
+ raise NotImplementedError