API reference › @evolu/common › Worker › TestWorker
Defined in: packages/common/src/Worker.ts:468
Test Worker with access to its paired worker-side self.
Use self to simulate messages and behavior from inside the worker.
Extends
Worker<Input,Output>
Methods
[dispose]()
dispose: void;
Defined in: node_modules/@typescript/old/lib/lib.esnext.disposable.d.ts:34
Inherited from
Properties
native
readonly native: NativeMessagePort<Input, Output>;
Defined in: packages/common/src/Worker.ts:87
The native underlying port for transferring via postMessage.
Prepare a port for transfer:
import { createMessageChannel, type NativeMessagePort } from "@evolu/common";
interface ConsoleMessage {
readonly type: "ConsoleEntry";
readonly text: string;
}
using consoleChannel = createMessageChannel<ConsoleMessage>();
const init = {
type: "InitConsole",
port: consoleChannel.port1.native,
};
expectTypeOf(init.port).toEqualTypeOf<NativeMessagePort<ConsoleMessage>>();
Inherited from
onMessage
onMessage: ((message: Output) => void) | null;
Defined in: packages/common/src/Worker.ts:58
Handler for incoming messages. Messages are queued until this is assigned,
matching native MessagePort behavior where setting onmessage implicitly
calls start(). This enables safe async initialization — the sender can
post messages immediately while the receiver sets up.
Inherited from
postMessage
readonly postMessage: (message: Input, transfer?: readonly Transferable[]) => void;
Defined in: packages/common/src/Worker.ts:47
Inherited from
self
readonly self: WorkerSelf<Input, Output>;
Defined in: packages/common/src/Worker.ts:473
Typed self counterpart for worker-side testing assertions.