Private
Public Access
0
0

test(auto-whitelist): use dataclasses.replace for frozen Session mutation

tests/test_auto_whitelist.py:20 did `reg.data[session_id]["whitelisted"] = True`.
Session is @dataclass(frozen=True) so attribute assignment raises
FrozenInstanceError. Changed to:
  reg.data[session_id] = dataclasses.replace(reg.data[session_id], whitelisted=True)
which produces a new Session instance with whitelisted overridden.

Verification: uv run pytest tests/test_auto_whitelist.py -v -> 4 passed (was 1 failed).
This commit is contained in:
2026-06-24 11:08:07 -04:00
parent 1b39aae7c4
commit 24b39aeef9
+2 -1
View File
@@ -1,3 +1,4 @@
import dataclasses
import pytest
from src.log_registry import LogRegistry
from pathlib import Path
@@ -17,7 +18,7 @@ def test_auto_whitelist_keywords(registry_setup: LogRegistry) -> None:
reg.register_session(session_id, "logs", start_time)
# Manual override for testing if log files don't exist
reg.data[session_id]["whitelisted"] = True
reg.data[session_id] = dataclasses.replace(reg.data[session_id], whitelisted=True)
assert reg.is_session_whitelisted(session_id) is True
def test_auto_whitelist_message_count(registry_setup: LogRegistry) -> None: