blob: 899fb27838693a3e0ef46703efc63f4e23bf7934 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
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() == []
|