UNPKG

ai-functions

Version:

A powerful TypeScript library for building AI-powered applications with template literals and structured outputs

52 lines 1.87 kB
import { describe, expect, it } from 'vitest'; import { createQueue, queueGenerator } from './manager'; describe('Queue Manager', () => { describe('createQueue', () => { it('should create a queue with specified concurrency', () => { const options = { concurrency: 2 }; const queue = createQueue(options); expect(queue).toBeDefined(); expect(queue?.concurrency).toBe(2); }); it('should return undefined when no concurrency specified', () => { const options = {}; const queue = createQueue(options); expect(queue).toBeUndefined(); }); }); describe('queueGenerator', () => { it('should process items through queue', async () => { const options = { concurrency: 2 }; const queue = createQueue(options); const items = ['a', 'b', 'c']; const processed = []; async function* generator() { for (const item of items) { yield item; } } for await (const item of queueGenerator(generator, queue)) { processed.push(item); } expect(processed).toEqual(items); }); it('should process items directly when no queue provided', async () => { const items = ['a', 'b', 'c']; const processed = []; async function* generator() { for (const item of items) { yield item; } } for await (const item of queueGenerator(generator, undefined)) { processed.push(item); } expect(processed).toEqual(items); }); }); }); //# sourceMappingURL=manager.test.js.map