mirror of
https://github.com/Ark0N/Codeman.git
synced 2026-10-20 09:09:35 +02:00
fix(#647): pin the hold timer's own re-render
The timer test only checked that a handle existed, and the other hold tests re-rendered by hand, so deleting the re-render from the timer callback left every test green. A new test waits out the hold for real and asserts the suffix appears and the timer is spent with no further call. Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
This commit is contained in:
1 parent
67ca0954db
commit
9a57cd4fc4
1 file changed
+13
@@ -203,6 +203,19 @@ describe('connection indicator — a brief burst does not widen the pill', () =>
|
|||||||
app._updateConnectionIndicator(); // cancels it
|
app._updateConnectionIndicator(); // cancels it
|
||||||
});
|
});
|
||||||
|
|
||||||
|
it('shows the count by itself once the hold elapses, and the timer is spent', async () => {
|
||||||
|
// A real wait, on purpose: the vm context runs on its own Date and the real setTimeout, so this
|
||||||
|
// exercises the shipped timer callback rather than a manual re-render.
|
||||||
|
const { app, els } = makeApp({ activeSessionId: 's1', _wsState: 'connected', queuedBytes: 40 });
|
||||||
|
app._updateConnectionIndicator();
|
||||||
|
expect(els.connectionText.textContent).toBe('WS');
|
||||||
|
await new Promise((r) => setTimeout(r, 1400));
|
||||||
|
expect(els.connectionText.textContent).toBe('WS · 40B queued');
|
||||||
|
expect((app as unknown as { _backlogHoldTimer: unknown })._backlogHoldTimer).toBeNull();
|
||||||
|
app._pendingDeliveries.clear();
|
||||||
|
app._updateConnectionIndicator();
|
||||||
|
});
|
||||||
|
|
||||||
it('shows the count once the same backlog has stayed up past the hold', () => {
|
it('shows the count once the same backlog has stayed up past the hold', () => {
|
||||||
const { app, els } = makeApp({ activeSessionId: 's1', _wsState: 'connected', queuedBytes: 40 });
|
const { app, els } = makeApp({ activeSessionId: 's1', _wsState: 'connected', queuedBytes: 40 });
|
||||||
app._updateConnectionIndicator();
|
app._updateConnectionIndicator();
|
||||||
|
|||||||
Reference in new issue
Block a user