diff options
| author | TheSiahxyz <164138827+TheSiahxyz@users.noreply.github.com> | 2026-04-01 17:56:16 +0900 |
|---|---|---|
| committer | TheSiahxyz <164138827+TheSiahxyz@users.noreply.github.com> | 2026-04-01 17:56:16 +0900 |
| commit | fa7e1dc44787592da647bdda0a63310be0cfcc8b (patch) | |
| tree | 9533c747f8a40aaa1697252382bfbbafc8f3fe9d /services/api/tests/test_orders_router.py | |
| parent | a65575124b18f2ec5d418623e22c5bdef6c3424e (diff) | |
test: add CLI command tests and API router tests
Diffstat (limited to 'services/api/tests/test_orders_router.py')
| -rw-r--r-- | services/api/tests/test_orders_router.py | 54 |
1 files changed, 54 insertions, 0 deletions
diff --git a/services/api/tests/test_orders_router.py b/services/api/tests/test_orders_router.py new file mode 100644 index 0000000..899fb27 --- /dev/null +++ b/services/api/tests/test_orders_router.py @@ -0,0 +1,54 @@ +"""Tests for orders API router.""" +import pytest +from decimal import Decimal +from datetime import datetime, timezone +from unittest.mock import AsyncMock, MagicMock +from fastapi.testclient import TestClient +from fastapi import FastAPI + +from trading_api.routers.orders import router + + +@pytest.fixture +def app(): + app = FastAPI() + app.include_router(router, prefix="/orders") + return app + + +@pytest.fixture +def mock_db(): + db = AsyncMock() + mock_session = AsyncMock() + mock_session.__aenter__ = AsyncMock(return_value=mock_session) + mock_session.__aexit__ = AsyncMock(return_value=False) + db.get_session = MagicMock(return_value=mock_session) + return db, mock_session + + +def test_get_orders_empty(app, mock_db): + db, session = mock_db + app.state.db = db + + mock_result = MagicMock() + mock_result.scalars.return_value.all.return_value = [] + session.execute = AsyncMock(return_value=mock_result) + + client = TestClient(app) + response = client.get("/orders/") + assert response.status_code == 200 + assert response.json() == [] + + +def test_get_signals_empty(app, mock_db): + db, session = mock_db + app.state.db = db + + mock_result = MagicMock() + mock_result.scalars.return_value.all.return_value = [] + session.execute = AsyncMock(return_value=mock_result) + + client = TestClient(app) + response = client.get("/orders/signals") + assert response.status_code == 200 + assert response.json() == [] |
