import sys import os sys.path.insert(0, os.path.abspath(os.path.join(os.path.dirname(__file__), '../..'))) import pytest from unittest.mock import patch, MagicMock from utils import yfinance_utils import pandas as pd def test_fetch_yfinance_daily_success(): with patch('yfinance.download') as mock_download: df = pd.DataFrame({'Adj Close': [1, 2, 3]}, index=pd.date_range('2020-01-01', periods=3)) mock_download.return_value = df result = yfinance_utils.fetch_yfinance_daily('MSFT', '2020-01-01', '2020-01-03') assert isinstance(result, pd.Series) assert not result.empty def test_fetch_yfinance_daily_empty(): with patch('yfinance.download') as mock_download: df = pd.DataFrame() mock_download.return_value = df result = yfinance_utils.fetch_yfinance_daily('MSFT', '2020-01-01', '2020-01-03') assert result is None