Files
brain/tools/domain-skill-discipline.test.mjs
T

25 lines
1.2 KiB
JavaScript

import { describe, it, expect } from 'vitest';
import { uncalledDomainSkills, domainCallDiscipline } from './domain-skill-discipline.mjs';
describe('uncalledDomainSkills (рекомендован, но не вызван по журналу — K2)', () => {
it('все вызваны → []', () => {
expect(uncalledDomainSkills({ recommendedDomainSkills: ['frontend-design'], invokedSkills: ['frontend-design'] })).toEqual([]);
});
it('пересказал вместо вызова → в списке', () => {
expect(uncalledDomainSkills({ recommendedDomainSkills: ['frontend-design'], invokedSkills: [] })).toEqual(['frontend-design']);
});
});
describe('domainCallDiscipline', () => {
it('всё вызвано → ok', () => {
expect(domainCallDiscipline({ recommendedDomainSkills: ['fd'], invokedSkills: ['fd'] }).ok).toBe(true);
});
it('не вызван → not ok + причина про пересказ/K2', () => {
const r = domainCallDiscipline({ recommendedDomainSkills: ['fd'], invokedSkills: [] });
expect(r.ok).toBe(false); expect(r.reason).toMatch(/не вызван|пересказ|K2/i);
});
it('пустые рекомендации → ok', () => {
expect(domainCallDiscipline({}).ok).toBe(true);
});
});