You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

51 lines
1.4 KiB
Python

#!/usr/bin/env python3
"""
Mock 데이터 생성 테스트
"""
from mock_test import MockStockOracleAnalyzer
import json
from datetime import datetime, timedelta
# Mock analyzer 생성
analyzer = MockStockOracleAnalyzer()
# 데이터 가져오기
ticker = "AAPL"
years = 1
data = analyzer.get_company_data(ticker, years=years)
print("Company Info:", data.get('company_info'))
print("\n")
# Financial data structure
financial_data = data.get('financial_data', {})
print("Financial data keys:", financial_data.keys())
# Check income statement
income_statement = financial_data.get('income_statement', {})
print("\nIncome statement keys:", income_statement.keys())
# Check revenue data
revenue_data = income_statement.get('revenue', [])
print(f"\nRevenue data points: {len(revenue_data)}")
if revenue_data:
print("First revenue data point:", revenue_data[0])
print("Last revenue data point:", revenue_data[-1])
# Date filtering test
start_date = datetime(2020, 1, 1)
end_date = datetime(2020, 6, 1)
filtered_revenue = []
for item in revenue_data:
item_date = item['date']
if hasattr(item_date, 'to_pydatetime'):
item_date = item_date.to_pydatetime()
if start_date <= item_date <= end_date:
filtered_revenue.append(item)
print(f"\nFiltered revenue data points (2020-01-01 to 2020-06-01): {len(filtered_revenue)}")
for item in filtered_revenue:
print(f" Date: {item['date']}, Value: ${item['value']:,.0f}")