Offload functions to worker threads with shared memory primitives for Node.js.
8
fork

Configure Feed

Select the types of activity you want to include in your feed.

at main 32 lines 944 B view raw
1import { describe, it } from 'node:test'; 2import assert from 'node:assert/strict'; 3import { workers, assign } from 'moroutine'; 4import { identity } from './fixtures/worker-handle.ts'; 5 6describe('assign()', () => { 7 it('returns a new task with worker set', () => { 8 const run = workers(1); 9 try { 10 const task = identity(5); 11 const assigned = assign(run.workers[0], task); 12 assert.notStrictEqual(assigned, task); 13 assert.equal(assigned.id, task.id); 14 assert.deepEqual(assigned.args, task.args); 15 assert.notEqual(assigned.uid, task.uid); 16 assert.equal(assigned.worker, run.workers[0]); 17 } finally { 18 run[Symbol.dispose](); 19 } 20 }); 21 22 it('does not modify the original task', () => { 23 const run = workers(1); 24 try { 25 const task = identity(5); 26 assign(run.workers[0], task); 27 assert.equal(task.worker, undefined); 28 } finally { 29 run[Symbol.dispose](); 30 } 31 }); 32});