import pytest from fastapi.testclient import TestClient @pytest.fixture def client(monkeypatch, tmp_path): from app import db as _db monkeypatch.setattr(_db, "DB_PATH", str(tmp_path / "stock.db")) _db.init_db() from app.main import app return TestClient(app) def test_watchlist_crud(client): assert client.get("/api/stock/watchlist").json()["watchlist"] == [] r = client.post("/api/stock/watchlist", json={"ticker": "005930", "name": "삼성전자"}) assert r.status_code == 201 wl = client.get("/api/stock/watchlist").json()["watchlist"] assert wl[0]["ticker"] == "005930" assert client.delete("/api/stock/watchlist/005930").status_code == 200 assert client.delete("/api/stock/watchlist/005930").status_code == 404 def test_trade_alerts_history_empty(client): assert client.get("/api/stock/trade-alerts?days=7").json()["alerts"] == []