Files
brain/tools/secretary-enqueue.test.mjs
T

16 lines
837 B
JavaScript

import { describe, it, expect } from 'vitest';
import { spansToEnqueue } from './secretary-enqueue.mjs';
describe('spansToEnqueue', () => {
const bounds = [1, 3, 5]; // спаны: [1..2]#0, [3..4]#1, [5..last]#2
it('returns closed spans with index > cursor, as queue jobs', () => {
const jobs = spansToEnqueue({ rawBounds: bounds, lastTurn: 6, cursor: 0, session: 's' });
expect(jobs.map((j) => j.span.index)).toEqual([1]); // #0 обработан, #2 ещё открыт
expect(jobs[0]).toMatchObject({ session: 's', kind: 'span', span: { start: 3, end: 4, index: 1 } });
});
it('closing mode also enqueues the last (open) span', () => {
const jobs = spansToEnqueue({ rawBounds: bounds, lastTurn: 6, cursor: 1, session: 's', closing: true });
expect(jobs.map((j) => j.span.index)).toEqual([2]);
});
});