import { describe, it, expect } from 'vitest'; import { splitMultiTextUnits } from '../src/multiTextParser'; describe('multiTextParser', () => { it('应按布局比例分配角度', () => { const units = splitMultiTextUnits('甲乙|子|丙丁', 0, 120); expect(units).toHaveLength(3); expect(units[0].aStart).toBe(0); expect(units[0].aEnd).toBe(30); expect(units[1].aStart).toBe(30); expect(units[1].aEnd).toBe(90); expect(units[2].aStart).toBe(90); expect(units[2].aEnd).toBe(120); }); it('应识别 SVG 文件并拼接路径', () => { const units = splitMultiTextUnits('a.svg|b', 0, 60, 'src/assets/icons'); expect(units[0].isSvg).toBe(true); expect(units[0].svgPath).toBe('src/assets/icons/a.svg'); expect(units[1].isSvg).toBe(false); }); it('空内容应返回空数组', () => { expect(splitMultiTextUnits('', 0, 60)).toEqual([]); }); });