diff --git a/src/photools3/settings.py b/src/photools3/settings.py index 3fb5f46..1f8e09d 100644 --- a/src/photools3/settings.py +++ b/src/photools3/settings.py @@ -1,6 +1,14 @@ +from pathlib import Path + from pydantic_core import Url from pydantic_settings import BaseSettings, SettingsConfigDict +PHOTOOLS3_DIR = Path(__file__).parent.resolve() +SRC_DIR = PHOTOOLS3_DIR.parent +ROOT_DIR = SRC_DIR.parent +EXAMPLES_DIR = ROOT_DIR / "examples" +DNG_EXAMPLES_DIR = EXAMPLES_DIR / "dng" + class Settings(BaseSettings): model_config = SettingsConfigDict(env_file=".env") diff --git a/test/test_settings.py b/test/test_settings.py index 45c0ec5..a931d35 100644 --- a/test/test_settings.py +++ b/test/test_settings.py @@ -1,7 +1,38 @@ -from photools3.settings import Settings +from pathlib import Path + +from photools3.settings import ( + DNG_EXAMPLES_DIR, + EXAMPLES_DIR, + PHOTOOLS3_DIR, + ROOT_DIR, + SRC_DIR, + Settings, +) settings = Settings() +def test_photools3_dir(): + assert PHOTOOLS3_DIR == Path(__file__).parent.parent.resolve() / "src" / "photools3" + + +def test_src_dir(): + assert SRC_DIR == Path(__file__).parent.parent.resolve() / "src" + + +def test_root_dir(): + assert ROOT_DIR == Path(__file__).parent.parent.resolve() + + +def test_examples_dir(): + assert EXAMPLES_DIR == Path(__file__).parent.parent.resolve() / "examples" + + +def test_dng_examples_dir(): + assert ( + DNG_EXAMPLES_DIR == Path(__file__).parent.parent.resolve() / "examples" / "dng" + ) + + def test_settings_base(): assert settings.llm_api_base_url