TradingAgents/tests/unit
Andrew Kaszubski ae7899a6fc feat(dataflows): add data caching layer with rate limit awareness - Fixes #12
Implements [DATA-11] Data caching layer - FRED rate limits with:
- CacheEntry: Generic cache entries with TTL and metadata
- CacheStats: Hit/miss/stale statistics tracking
- RateLimitState: Per-source rate limit tracking with exponential backoff
- MemoryCache: In-memory LRU cache backend
- FileCache: File-based JSON cache backend
- DataCache: Main cache with source-specific TTLs and stale-while-rate-limited
- @cached decorator: Function result caching

Features:
- Multi-backend support (memory, file)
- TTL-based expiration with configurable per-source defaults
- Stale-while-revalidate when rate limited
- Thread-safe operations throughout
- 41 tests covering all components

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-26 16:51:48 +11:00
..
api feat(db): add Trade model with CGT tracking and Australian FY support (#6) - TradeSide/TradeStatus/TradeOrderType enums, 50% discount for >12mo holdings, multi-currency FX, 87 tests 2025-12-26 14:46:06 +11:00
dataflows feat(dataflows): add data caching layer with rate limit awareness - Fixes #12 2025-12-26 16:51:48 +11:00
__init__.py feat(tests): add pytest conftest.py hierarchy with shared fixtures - Fixes #49 2025-12-26 10:40:30 +11:00
conftest.py feat(tests): add pytest conftest.py hierarchy with shared fixtures - Fixes #49 2025-12-26 10:40:30 +11:00
test_conftest_hierarchy.py feat(tests): restructure tests into unit/integration/e2e directories - Fixes #50 2025-12-26 11:04:20 +11:00
test_documentation_structure.py feat(tests): restructure tests into unit/integration/e2e directories - Fixes #50 2025-12-26 11:04:20 +11:00
test_exceptions.py feat(tests): restructure tests into unit/integration/e2e directories - Fixes #50 2025-12-26 11:04:20 +11:00
test_logging_config.py feat(tests): restructure tests into unit/integration/e2e directories - Fixes #50 2025-12-26 11:04:20 +11:00
test_output_validators.py feat(tests): add UAT and evaluation tests for agent outputs - Fixes #53 2025-12-26 11:38:37 +11:00
test_report_exporter.py feat(tests): restructure tests into unit/integration/e2e directories - Fixes #50 2025-12-26 11:04:20 +11:00