Blocks the other two sub-issues.
This package has no shared span assertion helpers. suites/public-api/startSpan-streamed/test.ts and suites/tracing/ignoreSpans-streamed/test.ts each define their own local getSpanContainer(envelope), which will not scale to 80 ported files.
What to do
Add helpers next to runner.ts and expect.ts, mirroring what the other packages already have:
- node uses
.expect({ span }) in utils/runner/createRunner.ts, which gives a SerializedStreamedSpanContainer
- browser uses
waitForStreamedSpan / waitForStreamedSpans / waitForStreamedSpanEnvelope in utils/spanUtils.ts
At minimum this package needs: pull the span container out of an envelope, find a span by op or name, and collect spans across several envelopes, since streamed child spans do not all arrive in one envelope.
Port the two existing -streamed suites onto the new helpers in the same PR so the shape is proven before the bulk work starts.
Blocks the other two sub-issues.
This package has no shared span assertion helpers.
suites/public-api/startSpan-streamed/test.tsandsuites/tracing/ignoreSpans-streamed/test.tseach define their own localgetSpanContainer(envelope), which will not scale to 80 ported files.What to do
Add helpers next to
runner.tsandexpect.ts, mirroring what the other packages already have:.expect({ span })inutils/runner/createRunner.ts, which gives aSerializedStreamedSpanContainerwaitForStreamedSpan/waitForStreamedSpans/waitForStreamedSpanEnvelopeinutils/spanUtils.tsAt minimum this package needs: pull the span container out of an envelope, find a span by op or name, and collect spans across several envelopes, since streamed child spans do not all arrive in one envelope.
Port the two existing
-streamedsuites onto the new helpers in the same PR so the shape is proven before the bulk work starts.