feat: separate prior records behind an owner switch and count last-period questions
Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
@@ -0,0 +1,45 @@
|
||||
import { describe, it } from 'node:test';
|
||||
import assert from 'node:assert/strict';
|
||||
import {
|
||||
activityPriorWhere,
|
||||
dealPriorWhere,
|
||||
listPriorLens,
|
||||
personPriorWhere,
|
||||
} from '../src/common/prior-archive';
|
||||
|
||||
const now = new Date('2026-10-15T08:00:00.000Z');
|
||||
|
||||
describe('بایگانی اطلاعات قبل', () => {
|
||||
it('بدون مجوز فیلتر نمیگذارد', () => {
|
||||
assert.deepEqual(personPriorWhere('off'), {});
|
||||
assert.deepEqual(dealPriorWhere(undefined, now), {});
|
||||
});
|
||||
|
||||
it('کار جاری شخص قبلی را کنار میگذارد و معاملهٔ بازِ موعددار را نگه میدارد', () => {
|
||||
assert.deepEqual(personPriorWhere('current'), { importSource: { not: 'didar' } });
|
||||
const where = dealPriorWhere('current', now);
|
||||
assert.equal(where.OR?.length, 2);
|
||||
assert.deepEqual(where.OR?.[1], {
|
||||
importSource: 'didar',
|
||||
status: 'open',
|
||||
expectedCloseAt: { gt: now },
|
||||
});
|
||||
});
|
||||
|
||||
it('بایگانی فقط قبلیها را میآورد و استثنای باز را برمیدارد', () => {
|
||||
const where = activityPriorWhere('archive', now);
|
||||
assert.equal(where.importSource, 'didar');
|
||||
assert.deepEqual(where.NOT, {
|
||||
importSource: 'didar',
|
||||
status: 'open',
|
||||
dueAt: { gt: now },
|
||||
});
|
||||
});
|
||||
|
||||
it('جستجوی کار جاری شخص قبلی را پیدا میکند', () => {
|
||||
assert.equal(listPriorLens('current', 'علی', false), 'off');
|
||||
assert.equal(listPriorLens('current', ' ', false), 'current');
|
||||
assert.equal(listPriorLens('archive', 'علی', false), 'archive');
|
||||
assert.equal(listPriorLens('current', '', true), 'off');
|
||||
});
|
||||
});
|
||||
Reference in New Issue
Block a user