• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

cameri / nostream / 24596837766
65%

Build:
DEFAULT BRANCH: main
Ran 18 Apr 2026 04:26AM UTC
Jobs 2
Files 94
Run time 1min
Badge
Embed ▾
README BADGES
x

If you need to use a raster PNG badge, change the '.svg' to '.png' in the link

Markdown

Textile

RDoc

HTML

Rst

18 Apr 2026 04:25AM UTC coverage: 48.812% (-0.3%) from 49.12%
24596837766

push

github

web-flow
fix: properly await worker teardown in integration tests to prevent open handles (#481)

* fix: properly await worker teardown in integration tests to prevent open handles

AfterAll was calling worker.close() with a callback but not awaiting it,
so Cucumber resolved the hook immediately leaving the HTTP server, Redis,
and DB connections open. Node.js would then hang indefinitely waiting for
those handles to close.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>

* fix: guard Redis disconnect and increase AfterAll timeout

Redis client may not be connected when rate limits are disabled in tests,
causing disconnect() to throw ClientClosedError. Guard with isOpen check.
Also raise AfterAll timeout to 30s to allow server and DB to shut down.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>

* fix: close all HTTP keep-alive connections before server shutdown

http.Server.close() waits for keep-alive connections to drain naturally,
which can prevent the close callback from ever firing. closeAllConnections()
forces them closed immediately so the server shuts down reliably in CI.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>

* fix: remove ReplaySubject windowTime to prevent dangling timers after tests

ReplaySubject(2, 1000) schedules recurring setTimeout calls to evict stale
buffered events. These timers outlive the test run and keep Node.js alive
after Cucumber finishes, preventing clean process exit on CI.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>

* fix: add --force-exit to cucumber to handle unclosed handles after tests

The slidingWindowRateLimiterFactory creates a RedisAdapter singleton that
calls client.connect() on first WebSocket connection and has no teardown
path. --force-exit ensures the process exits cleanly after tests complete
rather than hanging on the open Redis socket.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>

* fix: explicitly exit after AfterAll cleanup instead of --for... (continued)

470 of 1071 branches covered (43.88%)

Branch coverage included in aggregate %.

6 of 8 new or added lines in 2 files covered. (75.0%)

8 existing lines in 2 files now uncovered.

1338 of 2633 relevant lines covered (50.82%)

9.53 hits per line

Uncovered Changes

Lines Coverage ∆ File
2
40.91
-46.59% src/cache/client.ts

Coverage Regressions

Lines Coverage ∆ File
6
40.91
-46.59% src/cache/client.ts
2
55.26
-7.59% src/app/worker.ts
Jobs
ID Job ID Ran Files Coverage
1 Integration - 24596837766.1 18 Apr 2026 04:27AM UTC 94
32.56
GitHub Action Run
2 Unit - 24596837766.2 18 Apr 2026 04:26AM UTC 94
45.92
GitHub Action Run
Source Files on build 24596837766
  • Tree
  • List 94
  • Changed 3
  • Source Changed 0
  • Coverage Changed 3
Coverage ∆ File Lines Relevant Covered Missed Hits/Line Branch Hits Branch Misses
  • Back to Repo
  • b3b61761 on github
  • Prev Build on main (#24594109623)
  • Next Build on main (#24597013493)
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc