test(realestate): add pytest harness with isolated SQLite fixture
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
26
realestate-lab/tests/conftest.py
Normal file
26
realestate-lab/tests/conftest.py
Normal file
@@ -0,0 +1,26 @@
|
||||
import os
|
||||
import sys
|
||||
import tempfile
|
||||
import pytest
|
||||
|
||||
# 테스트 임시 DB 경로를 import 전에 주입
|
||||
_TMP_DB = tempfile.mktemp(suffix=".db")
|
||||
os.environ["REALESTATE_DB_PATH"] = _TMP_DB
|
||||
|
||||
# app 패키지 import 가능하게 PYTHONPATH 보정
|
||||
sys.path.insert(0, os.path.dirname(os.path.dirname(os.path.abspath(__file__))))
|
||||
|
||||
|
||||
@pytest.fixture(autouse=True)
|
||||
def _clean_db():
|
||||
"""각 테스트마다 DB 초기화."""
|
||||
if os.path.exists(_TMP_DB):
|
||||
os.remove(_TMP_DB)
|
||||
from app.db import init_db
|
||||
init_db()
|
||||
yield
|
||||
try:
|
||||
if os.path.exists(_TMP_DB):
|
||||
os.remove(_TMP_DB)
|
||||
except OSError:
|
||||
pass # Windows: SQLite 파일 잠금 해제 전 삭제 실패 무시
|
||||
Reference in New Issue
Block a user