1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798 |
- import {
- loginIntercept,
- menuIntercept,
- loginSetup,
- menuTrigger,
- validateDelete,
- validatePut,
- validateTableList,
- validateTableSearch,
- successIntercept,
- normalIntercept,
- intercept,
- } from './utils';
- describe('角色管理', function() {
- beforeEach(function() {
- loginIntercept();
- menuIntercept();
- loginSetup();
- menuTrigger(1, 1);
- });
- beforeEach(function() {
- intercept('/role/getRole', function({url: reqUrl, reply}) {
- const url = new URL(reqUrl);
- const search = new URLSearchParams(url.search);
- if (search.has('roleName') && search.get('roleName').length)
- return reply({fixture: 'role/search'});
- const page = search.get('page');
- reply({fixture: page === '1' ? 'role/list1' : 'role/list2'});
- });
- successIntercept('/role/addRole');
- successIntercept('/role/updateRole');
- successIntercept('/role/delRole');
- normalIntercept('/menu/getMenu', 'menu/all');
- });
- it('角色列表', function() {
- validateTableList('role_table');
- });
- it('搜索', function() {
- const validate = validateTableSearch('role_table', 'roleSearch');
- cy.get('#filter_roleName').type('roleName');
- validate();
- });
- const {validateAdd, validateEdit} = validatePut(
- 'role_modal',
- '角色',
- );
- it('新增操作', function() {
- validateAdd(function() {
- cy.get('#operation_roleName').type('roleName');
- cy.get('#operation_roleRemarks').type('roleRemarks');
- });
- });
- it('修改操作', function() {
- validateEdit('role_table', function() {
- cy.get('#operation_roleName').should('have.value', '仓库管理员');
- cy.get('#operation_roleRemarks').should('have.value', 'cangk');
- });
- });
- it('删除操作', function() {
- validateDelete('role_table');
- });
- it('设置菜单权限', function() {
- cy.getTestId('role_table').find('table').find('.ant-table-tbody')
- .children('.ant-table-row').first().find('td').last().children().last()
- .trigger('click');
- cy.getTestId('role_tree_modal').find('h3')
- .should('include.html', '菜单权限');
- cy.getTestId('role_tree_modal').should('exist').and('be.visible');
- cy.getTestId('role_tree').find('.ant-tree-list-holder-inner')
- .find('.ant-tree-treenode').each(function(res, idx) {
- idx <= 3
- ? expect(res.hasClass('ant-tree-treenode-checkbox-checked')).to.true
- : expect(res.hasClass('ant-tree-treenode-checkbox-checked')).to.false;
- }).should('have.length', 9);
- cy.getTestId('role_tree_modal').find('form').submit();
- cy.getTestId('modal_btn_group').find('.ant-btn-loading').should('exist');
- cy.get('.ant-message-notice-content').should('include.text', '设置成功');
- cy.getTestId('role_tree_modal').should('not.exist');
- });
- });
|