| self = <tests.test_daily_summary_llm.TestDetectCrashDistribution object at 0x120bffdd0>
|
| mock_settings = <MagicMock name='settings' id='4864795152'>
|
| mock_load_inst = <MagicMock name='_load_institutional_activity' id='4864798032'>
|
|
|
| @patch("rtrader.utils.daily_summary_llm._load_institutional_activity")
|
| @patch("rtrader.utils.daily_summary_llm.settings")
|
| def test_high_two_of_three_signals(self, mock_settings, mock_load_inst):
|
| """High severity when 2 of 3 criteria met."""
|
| mock_settings.CRASH_DISTRIBUTION_DETECTION_ENABLED = True
|
|
|
| snaps, stealth = self._make_snapshots(
|
| cmf_values=[-0.1, -0.2, -0.15, -0.3, -0.25],
|
| patterns=[
|
| "Bearish Distribution",
|
| "Bullish Accumulation",
|
| "Bullish Accumulation",
|
| "Bearish Distribution",
|
| "Bullish Accumulation",
|
| ],
|
| stealth_scores=[30, 30, 30, 30, 30], # No spike
|
| )
|
|
|
| mock_load_inst.return_value = {"stealth_score": 30}
|
|
|
| from rtrader.utils.daily_summary_llm import _detect_crash_distribution
|
| from datetime import date
|
|
|
| result = _detect_crash_distribution("TEST", date(2026, 3, 19), snaps)
|
|
|
| > assert result is not None
|
| E assert None is not None
|
|
|
| tests/test_daily_summary_llm.py:632: AssertionError
|