import { beforeSetup, clickMenu, generateNetworkResult, intercept, validateDialog, } from './utils'; const containerBasicData = { id: '5', department: '涂装班组', departmentId: '000300010012', type: '充电桩底座+1', containerName: '特来电002', code: '00002', num: '9', createTime: '2023-03-31 10:11:27', modifyUser: 'admin', modifyTime: '2023-03-31 10:46:30', page: 0, limit: 0, }; const roleBasicData = { id: 11, roleCode: 'BH000011', roleName: 'test账户', createTime: '2023-03-30 14:50:46', remarks: '测试用账户', menu: '78,93,88,79,', menuBefore: '93,88,79', menuPda: '29,30,31,32,', modifyUser: 'admin', modifyTime: '2023-04-12 15:16:15', page: 0, limit: 0, }; const menuBasicData = { id: '7', name: '系统设置', url: '.', pId: '0', idCode: null, type: 'PC', page: 0, limit: 0, orderBy: '0', menu: null, img: 'xitongguanli', modifyUser: 'admin', modifyTime: '2023-03-29 13:42:47', pid: '0', }; describe('page tab', function () { beforeEach(function () { beforeSetup(); }); beforeEach(function () { intercept('/container/getContainer', function ({reply, search}) { generateNetworkResult({ reply, search, basicData: containerBasicData, title: 'code', }); }); intercept('/role/getRole', function ({search, reply}) { generateNetworkResult({ search, basicData: roleBasicData, reply, title: 'roleCode', }); }); intercept('/menu/getPage', function ({search, reply}) { generateNetworkResult({ search, reply, basicData: menuBasicData, title: 'name', skipCondition(name) { return name === 'pId' || name === 'type'; }, }); }); }); function validateTabLength(length: number) { cy.getTestId('tab_list') .find('.ant-tabs-nav') .find('.ant-tabs-nav-wrap') .find('.ant-tabs-tab') .should('have.length', length); } function validateTabActiveText(text: string) { cy.getTestId('tab_list') .find('.ant-tabs-tab-active') .children('div') .should('have.text', text); } it('tab', function () { validateTabLength(1); // 判断新增是否正确 clickMenu('基础资料', '容器管理'); validateTabActiveText('容器管理'); clickMenu('系统设置', '角色管理'); validateTabActiveText('角色管理'); clickMenu('系统设置', '菜单管理'); validateTabActiveText('菜单管理'); validateTabLength(4); // 判断删除当前选中的tab cy.getTestId('tab_list') .find('.ant-tabs-tab-active') .find('button') .click(); validateTabLength(3); validateTabActiveText('角色管理'); // 判断删除非选中的tab clickMenu('系统设置', '菜单管理'); cy.getTestId('tab_list').find('.ant-tabs-tab').eq(1).find('button').click(); validateTabLength(3); validateTabActiveText('菜单管理'); // 判断点击已添加的菜单是否会切换到指定tab clickMenu('系统设置', '角色管理'); validateTabActiveText('角色管理'); // 清空tab cy.getTestId('clear_tab_btn').click(); validateDialog('清除标签页', '你确定要关闭所有标签页吗?'); validateTabLength(1); }); });