Skip to main content
zerotal

Documentation


Documentation / @zerotal/testing / index / QueueFake

Class: QueueFake

Defined in: queue/src/QueueFake.ts:20

Drop-in replacement for QueueManager that captures dispatched jobs instead of persisting or executing them. Install at the start of a test; restore after.

Example

const queue = QueueFake.install();

await Queue.dispatch(new ProcessPaymentJob(order));

queue.assertDispatched(ProcessPaymentJob);
queue.assertDispatchedCount(1);

queue.restore(); // call in afterEach

Accessors

isShuttingDown

Get Signature

get isShuttingDown(): boolean

Defined in: queue/src/QueueFake.ts:55

Returns

boolean

Methods

install()

static install(): QueueFake

Defined in: queue/src/QueueFake.ts:31

Replace the 'queue' container binding with this fake.

Returns

QueueFake


restore()

restore(): void

Defined in: queue/src/QueueFake.ts:40

Restore the original 'queue' binding. Call in afterEach.

Returns

void


dispatch()

dispatch(job): Promise<void>

Defined in: queue/src/QueueFake.ts:51

Capture the job — does NOT execute it.

Parameters

job

Job

Returns

Promise<void>


processNext()

processNext(): Promise<boolean>

Defined in: queue/src/QueueFake.ts:59

Returns

Promise<boolean>


drain()

drain(): Promise<void>

Defined in: queue/src/QueueFake.ts:62

Returns

Promise<void>


size()

size(): Promise<number>

Defined in: queue/src/QueueFake.ts:63

Returns

Promise<number>


flush()

flush(): Promise<void>

Defined in: queue/src/QueueFake.ts:66

Returns

Promise<void>


dispatched()

dispatched(): Job[]

Defined in: queue/src/QueueFake.ts:73

All captured jobs.

Returns

Job[]


assertDispatched()

assertDispatched<T>(JobClass, callback?): void

Defined in: queue/src/QueueFake.ts:85

Assert that a specific Job class was dispatched. Pass an optional filter callback to narrow the assertion.

Type Parameters

T

T extends Job

Parameters

JobClass

(...args) => T

callback?

(job) => boolean

Returns

void

Example

queue.assertDispatched(ProcessPaymentJob);
queue.assertDispatched(ProcessPaymentJob, (j) => j.orderId === 42);

assertNotDispatched()

assertNotDispatched<T>(JobClass): void

Defined in: queue/src/QueueFake.ts:99

Assert that a Job class was NOT dispatched.

Type Parameters

T

T extends Job

Parameters

JobClass

(...args) => T

Returns

void


assertNothingDispatched()

assertNothingDispatched(): void

Defined in: queue/src/QueueFake.ts:109

Assert that no jobs were dispatched.

Returns

void


assertDispatchedCount()

assertDispatchedCount(count): void

Defined in: queue/src/QueueFake.ts:119

Assert the exact number of dispatched jobs.

Parameters

count

number

Returns

void