These docs cover 0.2.0-beta.26. Each guide distinguishes supported beta behavior, explicit deployment boundaries, and retained 0.1 compatibility material.

Browse documentationAll guides

Tooling · @presolve/testing

Vitest and Playwright

@presolve/testing creates immutable runner configuration around an already-published compiler product. It does not parse application source, run a server, or reinterpret compiler diagnostics.

Vitest configuration

import { createPresolveVitestConfig } from "@presolve/testing";export default createPresolveVitestConfig({compilerProduct,readArtifact,fixtures: [{ name: "counter", route: "/" }],});

Playwright project metadata

import { createPresolvePlaywrightProject } from "@presolve/testing";const project = createPresolvePlaywrightProject({compilerProduct, readArtifact,baseURL: "http://127.0.0.1:3000",fixtures: [{ name: "profile form", route: "/profile/" }],});

baseURL must be an absolute HTTP(S) origin with no path, query, or fragment. Route fixtures remain explicit caller-owned inputs.

Public helpers

createPresolveVitestConfig(options)

Returns schema version, runner identity, compiler snapshot metadata, declared fixtures, and one compiler-product Vite plugin.

createPresolvePlaywrightProject(options)

Adds a normalized Playwright use.baseURL to the same compiler-bound integration.

declaredTest({ name, command, lane })

Creates immutable metadata for a caller-owned local test command.

equalCanonicalBytes(expected, actual)

Compares two Uint8Array values exactly without interpreting artifact contents.

What to prove in a browser

  • Cold render and usable complete HTML before behavior starts.
  • Exact event, state, binding, structure, effect, form, and resource behavior.
  • Compatible resume plus malformed-snapshot cold fallback.
  • Teardown, cancellation, stale async suppression, and listener cleanup.
  • Mobile layout, keyboard operation, focus visibility, zoom, and reduced motion.
Start the server yourself

The helpers are configuration records, not test runners or preview servers. Start development or preview through the project’s compiler/Vite command boundary.