Separat status och mottagningsräknare för varje kanal.

Senaste råmeddelande, fel och ignoreringsorsaker.
Pausa visning, rensa och kopiera logg.
Uppdateras utan att störa inställningsfält eller tidtagning.
This commit is contained in:
larssand
2026-09-08 18:37:47 +02:00
parent 8aedf83826
commit a0c3d3039e
15 changed files with 265 additions and 14 deletions

View File

@@ -1,3 +1,4 @@
import { decoderDiagnostics } from "../src/decoder_diagnostics.js";
import test from "node:test";
import assert from "node:assert/strict";
@@ -179,9 +180,17 @@ test("connect decoder opens one websocket per enabled role", () => {
pit_entry: "ws://server:9002",
pit_exit: "ws://server:9003",
});
decoderDiagnostics.clear("main");
clients.main.onopen();
clients.main.onmessage({ data: "not json" });
clients.main.onmessage({ data: JSON.stringify({ msg: "STATUS" }) });
assert.equal(decoderDiagnostics.snapshot()[0].frames, 2);
assert.equal(decoderDiagnostics.snapshot()[0].parseErrors, 1);
clients.main.onerror();
clients.main.onclose();
assert.equal(decoderDiagnostics.snapshot()[0].status, "disconnected");
clients.main.onopen();
assert.equal(decoderDiagnostics.snapshot()[0].status, "connected");
assert.equal(renderCount, 0);
} finally {
globalThis.WebSocket = OriginalWebSocket;