function buildAllGroupBundles
buildAllGroupBundles(groupConfigs: Config[]): Promise<void>

Builds all concurrent group bundles with a single esbuild invocation.

The key win over N separate buildTestBundle() calls: esbuild constructs the module graph once for all entry points. Shared dependencies — qunitx (~270 KB), node_modules packages, common test utilities — are parsed, resolved, and tree-shaken exactly once regardless of group count, rather than N times in parallel.

Each group gets a virtual entry point via an esbuild plugin. Outputs land in memory (write:false), then are written to each group's output directory in parallel.

import type { Config } from '../../types.ts';
// Defined, not invoked: one esbuild invocation shared by every concurrent group.
async function bundleGroups(groupConfigs: Config[]) {
  await buildAllGroupBundles(groupConfigs); // each group's build.allTestCode populated
}

Parameters

groupConfigs: Config[]

Return Type

Promise<void>

Usage

import { buildAllGroupBundles } from "lib/commands/test/tests-in-browser.ts";