pdaMenu.cy.ts 2.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778
  1. import {
  2. intercept,
  3. loginIntercept,
  4. loginSetup,
  5. menuIntercept,
  6. menuTrigger,
  7. successIntercept,
  8. validateDelete,
  9. validatePut,
  10. validateTableList,
  11. validateTableSearch,
  12. } from './utils';
  13. describe('PDA菜单管理', function() {
  14. beforeEach(function() {
  15. loginIntercept();
  16. menuIntercept();
  17. loginSetup();
  18. menuTrigger(3, 1);
  19. });
  20. beforeEach(function() {
  21. intercept('/menu/getPage', function({reply, url: reqUrl}) {
  22. const url = new URL(reqUrl);
  23. const search = new URLSearchParams(url.search);
  24. if (search.get('pId') !== '0') {
  25. if (search.has('name') && search.get('name').length)
  26. return reply({fixture: 'menu/childSearchList'});
  27. const page = search.get('page');
  28. return reply({fixture: `menu/childList${page}`});
  29. }
  30. if (search.has('name') && search.get('name').length)
  31. return reply({fixture: 'menu/searchList'});
  32. const page = search.get('page');
  33. return reply({fixture: `menu/list${page}`});
  34. });
  35. successIntercept('/menu/addMenu');
  36. successIntercept('/menu/updateMenu');
  37. successIntercept('/menu/delMenu');
  38. });
  39. const TABLE_NAME = 'menu_table',
  40. MODAL_NAME = 'menu_modal',
  41. LABEL = 'PDA菜单';
  42. it('表格', function() {
  43. validateTableList(TABLE_NAME);
  44. const validate = validateTableSearch(TABLE_NAME, 'search');
  45. cy.get('#filter_menuName').type('name');
  46. validate();
  47. });
  48. it('表格操作', function() {
  49. const {validateAdd, validateEdit} = validatePut(MODAL_NAME, LABEL);
  50. validateAdd(function() {
  51. cy.getTestId('field_menuName').type('菜单名称');
  52. cy.getTestId('field_menuID').type('test');
  53. cy.getTestId('field_menuOrderBy').clear().type('8');
  54. });
  55. validateEdit(TABLE_NAME, function() {
  56. cy.getTestId('field_menuName').should('have.value', '用户设置');
  57. cy.getTestId('field_menuID').should('have.value', '.');
  58. cy.getTestId('field_menuOrderBy').should('have.value', '1');
  59. });
  60. validateDelete(TABLE_NAME, LABEL);
  61. });
  62. });