getsentry / getsentry/sentry-javascript
deno: 22 of 24 orchestrion suites never load the real library
- Dominant language
- TypeScript
- Stars
- 8.7k
- Forks
- 1.8k
- Avg merge
- 1d 17h
- Merged PRs (30d)
- 515
Description
In `dev-packages/deno-integration-tests/suites/orchestrion-*`, only `orchestrion-mysql` and `orchestrion-postgres` spawn a real `deno run` scenario. The other 22 publish the diagnostics channel by hand:
```ts
const channel = tracingChannel('orchestrion:openai:chat');
channel.start.runStores(ctx, () => undefined);
channel.end.publish(ctx);
```
That tests the subscriber, which is shared with Node and already covered there. It proves nothing about whether Deno's `Module.registerHooks` transform actually injects the channel into that package. The Deno-specific risk is exactly the part not covered.
**Work item.** Promote three or four suites to real scenarios: express (the most-used), redis, and one AI provider. Reuse the `scenario.mjs` + `Deno.Command` shape from `orchestrion-mysql`.
**Prior art ***(related history only)*. No issue. getsentry/sentry-javascript#21827 (merged) created the `deno-integration-tests` package that these suites live in. [#18635]() (open) is the nearest umbrella.
Contributor guide
Research direction
Start in dev-packages/deno-integration-tests/suites/orchestrion-mysql and orchestrion-postgres, then compare the other orchestrion-* suites. Reuse the scenario.mjs and Deno.Command shape to promote express, redis, and one AI-provider suite to real scenarios. Done means those suites load the real library and exercise the Deno-specific transform rather than publishing the diagnostics channel by hand.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- deno, typescript
- Domain
- testing
- Issue type
- Feature
- Difficulty
- 3/5
- Estimated time
- 1-2 days
- Activity status
- Active
- Clarity
- Mostly clear
- Newbie friendliness
- 74/100