githubnext/chopinPublic

Let's compose rich plans together

Test the parts that need a browser, in one

Six adapters had no coverage at all and could not have any: measured
table rails, a pointer drag, a caret painted for somebody else, a wash
in `CSS.highlights`. None of them can be reached from `bun test`, which
has no DOM and should not grow one — happy-dom returns zero for every
rectangle, so a rail drawn in the right place and one drawn on top of
itself would pass the same assertion.

Forty tests in Chromium against the built client, because that is what
production serves and because one process is easier to reason about than
Vite and the server together. A room exists because somebody opened its
URL, so isolation costs a name rather than a fixture, and the suite runs
fully parallel against two servers it starts itself — 8788, and 8789
with the injection flags on, since `DEV_QUESTIONS` and `DEV_COMMENTS`
are read on every room open and one server would put a questionnaire in
every other suite's room.

The files are `*.e2e.ts`. Bun's runner claims `.spec.` as well as
`.test.`, so the conventional name would enrol every one of these in the
unit run, which cannot import them.

Nothing has gained a `data-testid`. The product already carries
`data-plan-*` for its own purposes and the rest is roles, labels and
placeholders — a test that wants a new attribute is usually a test
asking for the wrong thing.

`@types/bun` moves to the root because the catalog copies are nested per
workspace, and `e2e` is not one; making it a workspace to be typechecked
would have been a heavier answer than one dependency.
KCKrzysztof Cieslak authored committed by Krzysztof Cieślak
0170971Patch
Parent3a9582a
18 files changed+1248-15
StackedSplit