Files
2026-10-07 10:38:21 +02:00

20 lines
654 B
Python

"""Detector tests (SPECIFICATION §6). Detector implementations land in Phase 1."""
from datetime import datetime, timezone
from opcda_diagnozer.monitor.detectors import PollOutcome
from opcda_diagnozer.opc.base import ReadResult
def test_poll_outcome_holds_one_cycle() -> None:
result = ReadResult(
tag="Channel1.Device1.Level", value=1.5, quality_raw=0xC0, device_time=None
)
outcome = PollOutcome(
started_at=datetime.now(timezone.utc),
rtt_ms=12.5,
results=(result,),
)
assert outcome.rtt_ms == 12.5
assert outcome.error is None
assert outcome.results[0].tag == "Channel1.Device1.Level"