import { describe, it, expect } from 'vitest' import { mount } from '@vue/test-utils' // 假设已引入相关组件与API Mock // import ExamApply from '@/views/outpatient/ExamApply.vue' describe('历史回归测试集', () => { it('应正常加载门诊队列列表', () => { expect(true).toBe(true) }) }) describe('Bug #550: 检查申请项目选择交互优化', { tags: ['@bug550', '@regression'] }, () => { it('应解耦项目与检查方法的勾选,已选卡片默认收起且正确显示层级', () => { // 1. 模拟勾选项目 const item = { id: 1, name: '套餐128线排', selected: true, methods: [{ id: 101, name: '常规扫描', selected: false }] } const selected = [] // 模拟 handleItemCheck 逻辑 if (item.selected) { selected.push({ ...item, name: item.name.replace(/^套餐[::]/, '').replace(/套餐$/, ''), // 清理前缀 isExpanded: false, // 默认收起 methods: item.methods.map(m => ({ ...m, selected: false })) // 方法不自动勾选 }) } // 验证解耦:方法未被自动勾选 expect(selected[0].methods[0].selected).toBe(false) // 验证名称清理 expect(selected[0].name).toBe('128线排') // 验证默认收起 expect(selected[0].isExpanded).toBe(false) // 验证层级结构存在 expect(selected[0].methods).toBeDefined() expect(Array.isArray(selected[0].methods)).toBe(true) }) it('点击已选卡片应切换展开/收起状态', () => { const sel = { id: 1, name: '128线排', isExpanded: false } sel.isExpanded = !sel.isExpanded expect(sel.isExpanded).toBe(true) sel.isExpanded = !sel.isExpanded expect(sel.isExpanded).toBe(false) }) })