🎉 Initial commit

This commit is contained in:
Jonas Bengtsson
2026-10-07 10:38:21 +02:00
commit 1c64aeb071
38 changed files with 3391 additions and 0 deletions
+20
View File
@@ -0,0 +1,20 @@
"""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"