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

decentraland / lamb2 / 28469095931

30 Jun 2026 07:04PM UTC coverage: 62.172% (-20.9%) from 83.077%
28469095931

push

github

web-flow
chore: migrate @well-known-components/test-helpers and tracer-component to @dcl (#469)

* chore: migrate @well-known-components/test-helpers and tracer-component to @dcl

Swap the two remaining @well-known-components packages for their @dcl
core-components equivalents:

- @well-known-components/test-helpers -> @dcl/test-helpers@^0.2.0. The
  @dcl package declares jest/ts-jest/@types/jest and sinon/@types/sinon
  as peers (the wkc package bundled them), so add them as devDeps; it
  returns jest mocks from stubComponents (port .resolves() ->
  .mockResolvedValue()) and fixes the createLocalFetchCompoment typo
  export to createLocalFetchComponent.
- @well-known-components/tracer-component -> @dcl/tracer-component@^1.0.0.

Build, lint and the full jest suite (561 tests) pass locally.

* test: retry local fetch on transient connection errors

The native fetch (undici) that backs @dcl/test-helpers' createLocalFetchComponent
pools keep-alive connections, unlike the old node-fetch-based helper. Because every
suite reuses the same fixed HTTP_SERVER_PORT and tears its server down in afterAll,
the first request of a suite could land on a stale socket from the previous suite's
closed server and fail intermittently with "fetch failed" / ECONNRESET. Retry such
transient connection errors once so the integration suites are deterministic.

* test: retry transient local-fetch errors with backoff, not just once

The single immediate retry was not enough under CI timing: with all suites
sharing a fixed HTTP_SERVER_PORT, undici's pooled keep-alive socket to a
previous suite's torn-down server is reused and fails with 'other side
closed', and the immediate retry can race the socket eviction. Retry a few
times with a short backoff so undici drops the dead socket and reconnects.
Verified with 3 consecutive full runs (561 tests, 0 connection failures) in
a CI-equivalent environment (no local .env pinning the port).

* test: scope the default `yarn test` to unit tests only; ... (continued)

456 of 962 branches covered (47.4%)

Branch coverage included in aggregate %.

1 of 1 new or added line in 1 file covered. (100.0%)

429 existing lines in 29 files now uncovered.

1605 of 2353 relevant lines covered (68.21%)

10.51 hits per line

Source File
Press 'n' to go to next uncovered line, 'b' for previous

61.54
/src/logic/fetch-elements/fetch-items.ts


Source Not Available

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