test: fix broken tests after refactor
- Update test_openbb_service to import from obb_utils (to_list, first_or_empty) instead of removed _to_dicts/_first_or_empty - Update test_stock_upgrades to mock openbb_service instead of finnhub_service (upgrades moved to yfinance)
This commit is contained in:
@@ -1,4 +1,4 @@
|
||||
from openbb_service import _to_dicts, _first_or_empty
|
||||
from obb_utils import to_list, first_or_empty
|
||||
|
||||
|
||||
class MockModel:
|
||||
@@ -14,34 +14,34 @@ class MockOBBject:
|
||||
self.results = results
|
||||
|
||||
|
||||
class TestToDicts:
|
||||
class TestToList:
|
||||
def test_none_result(self):
|
||||
assert _to_dicts(None) == []
|
||||
assert to_list(None) == []
|
||||
|
||||
def test_none_results(self):
|
||||
obj = MockOBBject(results=None)
|
||||
assert _to_dicts(obj) == []
|
||||
assert to_list(obj) == []
|
||||
|
||||
def test_list_results(self):
|
||||
obj = MockOBBject(results=[
|
||||
MockModel({"a": 1}),
|
||||
MockModel({"b": 2}),
|
||||
])
|
||||
result = _to_dicts(obj)
|
||||
result = to_list(obj)
|
||||
assert len(result) == 2
|
||||
assert result[0] == {"a": 1}
|
||||
|
||||
def test_single_result(self):
|
||||
obj = MockOBBject(results=MockModel({"x": 42}))
|
||||
result = _to_dicts(obj)
|
||||
result = to_list(obj)
|
||||
assert result == [{"x": 42}]
|
||||
|
||||
|
||||
class TestFirstOrEmpty:
|
||||
def test_empty(self):
|
||||
assert _first_or_empty(None) == {}
|
||||
assert first_or_empty(None) == {}
|
||||
|
||||
def test_with_data(self):
|
||||
obj = MockOBBject(results=[MockModel({"price": 150.0})])
|
||||
result = _first_or_empty(obj)
|
||||
result = first_or_empty(obj)
|
||||
assert result == {"price": 150.0}
|
||||
|
||||
@@ -66,10 +66,12 @@ async def test_stock_recommendations(mock_recs, client):
|
||||
|
||||
|
||||
@pytest.mark.asyncio
|
||||
@patch("routes_sentiment.finnhub_service.get_upgrade_downgrade", new_callable=AsyncMock)
|
||||
@patch("routes_sentiment.openbb_service.get_upgrades_downgrades", new_callable=AsyncMock)
|
||||
async def test_stock_upgrades(mock_upgrades, client):
|
||||
mock_upgrades.return_value = [
|
||||
{"company": "Morgan Stanley", "action": "upgrade", "fromGrade": "Hold", "toGrade": "Buy"}
|
||||
{"date": "2026-03-05", "company": "Morgan Stanley", "action": "upgrade",
|
||||
"from_grade": "Hold", "to_grade": "Buy", "price_target_action": "Raises",
|
||||
"current_price_target": 300.0, "prior_price_target": 250.0}
|
||||
]
|
||||
resp = await client.get("/api/v1/stock/AAPL/upgrades")
|
||||
assert resp.status_code == 200
|
||||
|
||||
Reference in New Issue
Block a user