fix(nanoclaude): tests/conftest also adds gpu-services root for infra/

infra/ lives at the repo root, not inside nanoclaude/. The Dockerfile
copies it to /app/infra so tools.infra_tool can `from infra.core...`.
Mirror the in-container PYTHONPATH in conftest so the integration test
module can be imported outside Docker.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
Hyungi Ahn
2026-05-02 08:34:45 +09:00
parent 86c076fcf9
commit 47c0f4ff73
+10 -4
View File
@@ -1,5 +1,8 @@
"""pytest configuration — pin nanoclaude/ on sys.path so tests can use the
same `services.x` imports the running app does.
"""pytest configuration — match the in-container PYTHONPATH so tests can use
the same `services.x` and `infra.core.x` imports the running app does.
The Dockerfile copies ``nanoclaude/`` to /app/ and ``infra/`` to /app/infra/,
so /app is on PYTHONPATH and both packages resolve. Mirror that here.
"""
from __future__ import annotations
@@ -8,5 +11,8 @@ import sys
from pathlib import Path
NANOCLAUDE_ROOT = Path(__file__).resolve().parent.parent
if str(NANOCLAUDE_ROOT) not in sys.path:
sys.path.insert(0, str(NANOCLAUDE_ROOT))
GPU_SERVICES_ROOT = NANOCLAUDE_ROOT.parent
for path in (NANOCLAUDE_ROOT, GPU_SERVICES_ROOT):
if str(path) not in sys.path:
sys.path.insert(0, str(path))