import { describe, it, expect } from 'vitest'; import { videoDataAddModelIcon } from '../video-data-add-model-icon'; describe('videoDataAddModelIcon', () => { it('добавляет icon к matching модели', () => { const videoData = { models: [ { guid: 'm-1', title: 'Model A' }, { guid: 'm-2', title: 'Model B' }, ], }; const modelsData = [ { guid: 'm-1', primary_image_url: 'https://img.com/a.jpg' }, ]; const result = videoDataAddModelIcon(videoData as any, modelsData as any); expect(result.models[0].icon).toBe('https://img.com/a.jpg'); expect(result.models[1].icon).toBeUndefined(); }); it('не мутирует исходный объект', () => { const videoData = { models: [{ guid: 'm-1', title: 'A' }] }; const modelsData = [{ guid: 'm-1', primary_image_url: 'url' }]; const result = videoDataAddModelIcon(videoData as any, modelsData as any); expect(result).not.toBe(videoData); }); it('пустой массив моделей', () => { const videoData = { models: [{ guid: 'm-1', title: 'A' }] }; const result = videoDataAddModelIcon(videoData as any, []); expect(result.models[0].icon).toBeUndefined(); }); });