Flaky test: AbLegacy NativePcccBridgeStatusHealthTests.A_wire_Unsupported_reply_is_an_answered_refusal #767

Closed
opened 2026-11-09 13:30:06 -05:00 by dohertj2 · 1 comment
Owner

AbLegacy NativePcccBridgeStatusHealthTests.A_wire_Unsupported_reply_is_an_answered_refusal is flaky: it fails 1–2 of 6 local runs at master 5db01053 (before any #725 change) and 2 of 3 on the #725 branch. Seen while verifying #725; the file was not touched. Diagnose the timing dependency and make it deterministic.

`AbLegacy` `NativePcccBridgeStatusHealthTests.A_wire_Unsupported_reply_is_an_answered_refusal` is flaky: it fails 1–2 of 6 local runs at master 5db01053 (before any #725 change) and 2 of 3 on the #725 branch. Seen while verifying #725; the file was not touched. Diagnose the timing dependency and make it deterministic.
dohertj2 added the driver/ablegacytype:testpriority:p3 labels 2026-11-09 13:30:06 -05:00
Author
Owner

Fixed on master c29f98ff: clock-equality race in the test — InitializeAsync stamps LastSuccessfulRead = DateTime.UtcNow and ReadAsync stamps again microseconds later, so the two can be equal and ShouldNotBe(before) fails with correct product code (also hit the positive-control case). New WaitUntilClockPast(before) spin before the read; assertions unchanged. Evidence: NativePcccBridgeStatusHealthTests class ~7/20 passing before, 30/30 after (Release, --no-build). Product-side follow-up (route AbLegacy health stamps through the injectable Clock) filed separately.

Fixed on master c29f98ff: clock-equality race in the test — InitializeAsync stamps LastSuccessfulRead = DateTime.UtcNow and ReadAsync stamps again microseconds later, so the two can be equal and `ShouldNotBe(before)` fails with correct product code (also hit the positive-control case). New WaitUntilClockPast(before) spin before the read; assertions unchanged. Evidence: NativePcccBridgeStatusHealthTests class ~7/20 passing before, 30/30 after (Release, --no-build). Product-side follow-up (route AbLegacy health stamps through the injectable Clock) filed separately.
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: dohertj2/lmxopcua#767