department.cy.ts 2.3 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495
  1. import {
  2. loginIntercept,
  3. menuIntercept,
  4. loginSetup,
  5. menuTrigger,
  6. validateTableSearch,
  7. validateTableList,
  8. validatePut,
  9. validateDelete,
  10. successIntercept,
  11. intercept,
  12. exportIntercept,
  13. validateExport,
  14. } from './utils';
  15. describe('部门管理', function() {
  16. beforeEach(function() {
  17. loginIntercept();
  18. menuIntercept();
  19. loginSetup();
  20. menuTrigger(1, 2);
  21. });
  22. beforeEach(function() {
  23. intercept(
  24. '/department/getDepartment',
  25. function({url: reqUrl, reply}) {
  26. const url = new URL(reqUrl);
  27. const search = new URLSearchParams(url.search);
  28. if (search.has('departmentName') && search.get('departmentName').length)
  29. return reply({fixture: 'department/nameSearch'});
  30. if (search.has('code') && search.get('code').length)
  31. return reply({fixture: 'department/codeSearch'});
  32. const page = search.get('page');
  33. reply({fixture: page === '1' ? 'department/list1' : 'department/list2'});
  34. },
  35. );
  36. successIntercept('/department/addDepartment');
  37. successIntercept('/department/updateDepartment');
  38. successIntercept('/department/delDepartment');
  39. exportIntercept('/department/export');
  40. });
  41. const TABLE_NAME = 'department_table',
  42. MODAL_NAME = 'department_modal',
  43. LABEL = '部门';
  44. it('部门列表', function() {
  45. validateTableList(TABLE_NAME);
  46. });
  47. it('搜索', function() {
  48. const validate = validateTableSearch(TABLE_NAME);
  49. cy.get('#filter_departmentCode').type('TLD0004');
  50. cy.get('#filter_departmentName').clear();
  51. validate('searchCode');
  52. cy.get('#filter_departmentName').type('name');
  53. cy.get('#filter_departmentCode').clear();
  54. validate('searchName');
  55. });
  56. const {validateAdd, validateEdit} = validatePut(
  57. MODAL_NAME,
  58. LABEL,
  59. );
  60. it('新增部门', function() {
  61. function fillField() {
  62. cy.getTestId('field_departmentName').type('测试部门名称');
  63. }
  64. validateAdd(fillField);
  65. });
  66. it('修改部门', function() {
  67. function validateField() {
  68. cy.getTestId('field_departmentName').should('have.value', '包装部门');
  69. }
  70. validateEdit(TABLE_NAME, validateField);
  71. });
  72. it('删除部门', function() {
  73. validateDelete(TABLE_NAME, LABEL);
  74. });
  75. it('导出', function() {
  76. validateExport();
  77. });
  78. });