You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
feat(scenarios): add heartbeat-timeout scenario for TIMEOUT_NO_HEARTBEAT (#161)
Adds a `heartbeat-timeout` scenario covering `TIMEOUT_NO_HEARTBEAT`, which had no
scenario exercising it. The station boots with `interval: 300`, so the rule's
threshold lands at twice that, 600s. A single `StatusNotification` at 720s sits
past the threshold and gives the rule the trailing event it needs, and no
`Heartbeat` appears anywhere in the trace. `expectedFailures` is
`['TIMEOUT_NO_HEARTBEAT']`, asserted at `warning` severity and exactly once.
Takes the scenario registry to 19, updating the count in the registry test, the
external fixture test, and both READMEs. The detection-rule count stays 16, since
a scenario is not a rule.
Also picks up a missing `getScenario('refused-authorization')` assertion in
`index.test.ts`, a gap left behind by #156.
Closes#137
Add `heartbeat-timeout` scenario covering the `TIMEOUT_NO_HEARTBEAT` detection rule. The synthetic trace boots a station with `interval=300`, then sends a `StatusNotification` past the 2× interval threshold (`06:12:00.000Z`) with no `Heartbeat` anywhere in the trace.
'Station boots and never sends a Heartbeat. BootNotification response sets interval=300s, threshold at 600s. StatusNotification after threshold triggers TIMEOUT_NO_HEARTBEAT.',
5
+
trace: {
6
+
traceId: 'scenario-heartbeat-timeout',
7
+
metadata: {
8
+
stationId: 'CS-SYNTHETIC-018',
9
+
ocppVersion: '1.6',
10
+
source: 'synthetic-scenario',
11
+
description: 'Station boots and never sends a Heartbeat — timeout expected.',
0 commit comments