sdlc-hub/tests/test_layout.py
Andrey Epifancev a88bb1e6e8 refactor(sdlc-rename): пакет sdlc_hub, CLI sdlc-hub, каталог данных sdlc-hub
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-24 11:27:17 +04:00

37 lines
1.1 KiB
Python

"""Раскладка пакетов: чистый импорт и пути, зависящие от места файла."""
import subprocess
import sys
from pathlib import Path
import sdlc_hub
def test_fresh_imports():
r = subprocess.run(
[sys.executable, "-c", "import sdlc_hub.core.api, sdlc_hub.core.mcp, sdlc_hub.modules.jira.mcp, sdlc_hub.cli"],
capture_output=True, text=True)
assert r.returncode == 0, r.stderr
def test_web_app_path():
from sdlc_hub.core import api
assert api.WEB_APP == Path(sdlc_hub.__file__).parent / "web" / "app"
def test_hub_root():
from sdlc_hub.core import mcp
assert (mcp.HUB_ROOT / "pyproject.toml").is_file()
def test_default_home(monkeypatch, tmp_path):
from sdlc_hub.core import paths
monkeypatch.delenv("SDLC_HUB_HOME", raising=False)
monkeypatch.setenv("HOME", str(tmp_path))
assert paths.home() == tmp_path / ".local" / "share" / "sdlc-hub"
def test_env_home(monkeypatch, tmp_path):
from sdlc_hub.core import paths
monkeypatch.setenv("SDLC_HUB_HOME", str(tmp_path / "x"))
assert paths.home() == tmp_path / "x"