[pytest] # Pytest configuration for TradingAgents # Test discovery patterns python_files = test_*.py python_classes = Test* python_functions = test_* # Test paths - Structured by test type # tests/unit/ - Fast, isolated unit tests # tests/integration/ - Component interaction tests # tests/e2e/ - End-to-end workflow tests testpaths = tests tests/unit tests/integration tests/e2e # Markers - Register custom markers to avoid warnings markers = unit: Unit tests - fast, isolated tests of individual functions/classes integration: Integration tests - test interactions between components e2e: End-to-end tests - test complete workflows llm: Tests that interact with LLM providers (may require API keys) chromadb: Tests that interact with ChromaDB slow: Tests that take significant time to run (>5 seconds) requires_api_key: Tests that require API keys to run # Output options addopts = -v --strict-markers --tb=short --color=yes # Coverage options (when using pytest-cov) # Uncomment to enable coverage reporting by default # addopts = --cov=tradingagents --cov-report=term-missing # Logging log_cli = false log_cli_level = INFO log_cli_format = %(asctime)s [%(levelname)8s] %(message)s log_cli_date_format = %Y-%m-%d %H:%M:%S # Test collection options # Ignore certain directories during test collection norecursedirs = .git .tox dist build *.egg .venv venv # Timeout (requires pytest-timeout plugin) # timeout = 300 # 5 minutes default timeout per test # Warnings filterwarnings = error ignore::UserWarning ignore::DeprecationWarning