import assert from 'node:assert/strict';
import test from 'node:test';

import { buildAcademicCalendarTitle } from '../admin/js/views/academic-calendar-title.js';

test('название календарного графика собирается в заданном порядке', () => {
    assert.equal(buildAcademicCalendarTitle({
        specialtyCode: '09.03.04',
        specialtyProfileName: 'Программная инженерия',
        studyFormName: 'Очная',
        academicYearTitle: '2025-2026'
    }), '09.03.04 — Программная инженерия — Очная — 2025-2026');
});

test('части названия очищаются от лишних пробелов', () => {
    assert.equal(buildAcademicCalendarTitle({
        specialtyCode: ' 09.03.04 ',
        specialtyProfileName: ' Без профиля ',
        studyFormName: ' Заочная ',
        academicYearTitle: ' 2026-2027 '
    }), '09.03.04 — Без профиля — Заочная — 2026-2027');
});

test('неполный набор полей не образует вводящее в заблуждение название', () => {
    assert.equal(buildAcademicCalendarTitle({
        specialtyCode: '09.03.04',
        specialtyProfileName: '',
        studyFormName: 'Очная',
        academicYearTitle: '2025-2026'
    }), '');
});
