Skip to content

Wire most workspace TS test suites into CI #250

Description

@gordonwoodhull

Context

CI currently runs the TypeScript tests for hub-client (via ts-test-suite.ymlnpm run test:ci). The other packages in the npm workspace are built in CI but their own test suites aren't run yet. This looks like a leftover from when TS testing first moved into its own workflow (bf7e8f42, "attempt to move ts testing into own GHA workflow") — hub-client got wired up and the rest hasn't been added since.

Most of these suites are healthy today, so this is mostly a matter of connecting them up.

Suites not currently run in CI (checked locally)

Green as-is:

  • preview-renderer (208), preview-runtime (65), quarto-automerge-schema (52), q2-preview-spa (8), quarto-sync-client, trace-viewer (10), wasm-js-bridge (10), q2-demos/kanban (35)

Needs a small touch before gating in:

  • quarto-hub-mcp — passes except for a couple of deps not installed in my local checkout; likely green under a clean CI npm ci
  • sync-test-harness — one test sensitive to the same sync/peer-connection flakiness we see in e2e
  • annotated-qmd — 2 of 156 fail; tracked separately (bd-1d6io)

A couple of related notes

  • *.integration.test.ts files are excluded from several packages' default vitest run, so they don't run anywhere yet (e.g. most of q2-preview-spa's files).
  • Rust doctests aren't run either — nextest doesn't execute them and there's no cargo test --doc step. Worth a separate decision.

Suggested direction

Run the workspace suites in CI (e.g. npm test --workspaces --if-present), starting with the green ones so CI stays green, and fold in the others as they're ready. The integration-test and doctest items can be handled separately.

Metadata

Metadata

Assignees

No one assigned

    Labels

    testingTest suite, coverage, and test infrastructure

    Type

    No type

    Fields

    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions