import pytest from tempfile import TemporaryDirectory import os import os.path @pytest.fixture def testdir() -> str: return os.path.abspath(__file__) @pytest.fixture def project_root(testdir: str) -> str: return os.path.dirname(os.path.dirname(testdir)) @pytest.fixture def testdata_dir(project_root: str) -> str: return os.path.join(project_root, 'testdata') @pytest.fixture def maildir(testdata_dir: str) -> str: return os.path.join(testdata_dir, 'mail') @pytest.fixture def tmpdir() -> TemporaryDirectory[str]: return TemporaryDirectory()