pdaMenu.cy.ts 2.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384
  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. });
  45. it('搜索', function() {
  46. const validate = validateTableSearch(TABLE_NAME, 'search');
  47. cy.get('#filter_menuName').type('name');
  48. validate();
  49. });
  50. it('删除', function() {
  51. validateDelete(TABLE_NAME, LABEL);
  52. });
  53. const {validateAdd, validateEdit} = validatePut(MODAL_NAME, LABEL);
  54. it('新增', function() {
  55. validateAdd(function() {
  56. cy.getTestId('field_menuName').type('菜单名称');
  57. cy.getTestId('field_menuID').type('test');
  58. cy.getTestId('field_menuOrderBy').clear().type('8');
  59. });
  60. });
  61. it('修改', function() {
  62. validateEdit(TABLE_NAME, function() {
  63. cy.getTestId('field_menuName').should('have.value', '用户设置');
  64. cy.getTestId('field_menuID').should('have.value', '.');
  65. cy.getTestId('field_menuOrderBy').should('have.value', '1');
  66. });
  67. });
  68. });