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

azmaveth / ex_mcp / 9a4b04111cf20b0de02ffb27577918e1ba73615a
65%

Build:
DEFAULT BRANCH: master
Ran 05 Jun 2026 03:09PM UTC
Jobs 1
Files 258
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

05 Jun 2026 03:08PM UTC coverage: 8.868% (-0.09%) from 8.962%
9a4b04111cf20b0de02ffb27577918e1ba73615a

push

github

azmaveth
test(client): migrate remaining Process.sleep state-checks to telemetry

Continues the cleanup started in bde822a (which fixed the one CI flake
by establishing the pattern). Migrates 19 of the 30 Process.sleep
calls in error_scenarios_test.exs from the timing-sensitive
sleep + StateMachine.get_state shape to telemetry-driven
assert_receive {:state_transition, ...} waits.

## What changed

  - All 6 "connection error scenarios" tests now subscribe to state
    transitions via the attach_state_transition_listener helper
    (added in bde822a) and assert on the next transition rather than
    sleeping a fixed window. Cuts 4 sleeps; passes the moment the
    state machine settles instead of padding wall-clock.

  - The "request error scenarios" describe setup completes the
    handshake via telemetry-driven waits. Setup runs in 2s + RTT
    instead of 100ms + slack.

  - 2 "transport error scenarios" tests migrated; cuts 2 sleeps.

  - 3 "reconnection error scenarios" tests migrated. Two use a new
    wait_for_final_state/2 helper that drains transitions until a
    target state is reached AND the machine has settled (50ms quiet
    period). Handles multi-step retry flows where intermediate states
    are arbitrary but the final state matters.

  - 2 "edge case error scenarios" tests now drive setup via
    telemetry; brief Process.sleep retained only for the
    "did-it-crash?" alive check (different concern from state
    waits).

  - Fixed an actual bug while migrating: the "handles reconnection
    timeout" test sent `:reconnect_timeout` to a state machine in
    `:handshaking` state. The state machine's handler for that event
    is keyed on `:reconnecting`; in any other state it's logged as
    "Unhandled event" and silently discarded. The original test
    passed by accident — the assertion read `:disconnected` because
    enough wall-clock time passed for some other transition to take
    effect. The migrated version drives the machine through rea... (continued)

1419 of 16001 relevant lines covered (8.87%)

5.85 hits per line

Coverage Regressions

Lines Coverage ∆ File
17
51.32
-4.47% lib/ex_mcp/server/legacy.ex
Jobs
ID Job ID Ran Files Coverage
1 9a4b04111cf20b0de02ffb27577918e1ba73615a.1 05 Jun 2026 03:09PM UTC 258
8.87
GitHub Action Run
Source Files on build 9a4b04111cf20b0de02ffb27577918e1ba73615a
  • Tree
  • List 258
  • Changed 4
  • Source Changed 0
  • Coverage Changed 4
Coverage ∆ File Lines Relevant Covered Missed Hits/Line
  • Back to Repo
  • 9a4b0411 on github
  • Prev Build on master (#BDE822A8...)
  • Next Build on master (#FD97953B...)
  • Delete
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE TRIAL · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc