Fix missing pandas import in y_finance bulk indicators

This commit is contained in:
samchen 2026-03-31 00:47:24 -05:00
parent 4641c03340
commit 9524e04fe1
2 changed files with 41 additions and 1 deletions

View File

@ -0,0 +1,39 @@
import importlib
import sys
import types
import unittest
from unittest.mock import patch
import pandas as pd
class YFinanceBulkIndicatorTests(unittest.TestCase):
def test_bulk_indicator_maps_nan_to_na(self):
fake_stockstats = types.ModuleType("stockstats")
fake_stockstats.wrap = lambda df: df
with patch.dict(sys.modules, {"stockstats": fake_stockstats}):
sys.modules.pop("tradingagents.dataflows.stockstats_utils", None)
sys.modules.pop("tradingagents.dataflows.y_finance", None)
try:
y_finance = importlib.import_module("tradingagents.dataflows.y_finance")
sample_df = pd.DataFrame(
{
"Date": pd.to_datetime(["2024-01-02", "2024-01-03"]),
"rsi": [float("nan"), 55.5],
}
)
with patch.object(y_finance, "load_ohlcv", return_value=sample_df):
result = y_finance._get_stock_stats_bulk("AAPL", "rsi", "2024-01-03")
finally:
sys.modules.pop("tradingagents.dataflows.stockstats_utils", None)
sys.modules.pop("tradingagents.dataflows.y_finance", None)
self.assertEqual(result["2024-01-02"], "N/A")
self.assertEqual(result["2024-01-03"], "55.5")
if __name__ == "__main__":
unittest.main()

View File

@ -1,6 +1,7 @@
from typing import Annotated from typing import Annotated
from datetime import datetime from datetime import datetime
from dateutil.relativedelta import relativedelta from dateutil.relativedelta import relativedelta
import pandas as pd
import yfinance as yf import yfinance as yf
import os import os
from .stockstats_utils import StockstatsUtils, _clean_dataframe, yf_retry, load_ohlcv, filter_financials_by_date from .stockstats_utils import StockstatsUtils, _clean_dataframe, yf_retry, load_ohlcv, filter_financials_by_date