003_pages.js 3.3 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374
  1. /// <reference types="Cypress" />
  2. context('Module pages', () => {
  3. it('should reset', () => {
  4. cy.installCMS();
  5. });
  6. it('should render data table', () => {
  7. cy.loginCMS();
  8. cy.visitCMS('/cp/');
  9. cy.get('table.data-table thead tr').should('have.length', 1);
  10. cy.get('table.data-table thead tr th').should('have.length', 4);
  11. cy.get('table.data-table tbody tr').should('have.length', 3);
  12. cy.get('table.data-table tbody tr:nth-child(1) td').should('have.length', 4);
  13. cy.logoutCMS();
  14. });
  15. it('should render data form', () => {
  16. cy.loginCMS();
  17. cy.visitCMS('/cp/index/add/');
  18. cy.get('.data-form.index-add input[type=text]').should('have.length', 4);
  19. cy.get('.data-form.index-add textarea').should('have.length', 2);
  20. cy.get('.data-form.index-add input[type=checkbox]').should('have.length', 1);
  21. cy.logoutCMS();
  22. });
  23. it('should add new page', () => {
  24. cy.loginCMS();
  25. cy.visitCMS('/cp/index/add/');
  26. cy.get('.data-form.index-add input[name=name]').clear().type('Some test page');
  27. cy.get('.data-form.index-add textarea[name=content]').parent().find('.pell-content').clear().type('Some test content');
  28. cy.get('.data-form.index-add input[name=meta_title]').clear().type('Page meta title');
  29. cy.get('.data-form.index-add input[name=meta_keywords]').clear().type('Page meta keywords');
  30. cy.get('.data-form.index-add textarea[name=meta_description]').clear().type('Page meta description');
  31. cy.get('.data-form.index-add label[for=lbl_active]').click();
  32. cy.get('#add-edit-button').click();
  33. cy.actionWait();
  34. cy.logoutCMS();
  35. });
  36. it('should render added page in list', () => {
  37. cy.loginCMS();
  38. cy.visitCMS('/cp/');
  39. cy.get('table.data-table tbody tr').should('have.length', 4);
  40. cy.get('table.data-table tbody tr td').should('contain', 'Some test page');
  41. cy.contains('table#cp-table-fave_pages tbody tr td a', 'Some test page').parentsUntil('tr').parent().find('.svg-green').should('exist');
  42. cy.logoutCMS();
  43. });
  44. it('should render added page in edit form', () => {
  45. cy.loginCMS();
  46. cy.visitCMS('/cp/');
  47. cy.contains('table.data-table tbody tr td a', 'Some test page').click();
  48. cy.get('.data-form.index-modify input[name=name]').should('have.value', 'Some test page');
  49. cy.get('.data-form.index-modify input[name=alias]').should('have.value', '/some-test-page/');
  50. cy.get('.data-form.index-modify textarea[name=content]').parent().find('.pell-content').should(($editor) => {
  51. expect($editor).to.have.text('Some test content');
  52. });
  53. cy.get('.data-form.index-modify input[name=meta_title]').should('have.value', 'Page meta title');
  54. cy.get('.data-form.index-modify input[name=meta_keywords]').should('have.value', 'Page meta keywords');
  55. cy.get('.data-form.index-modify textarea[name=meta_description]').should('have.value', 'Page meta description');
  56. cy.get('.data-form.index-modify input[name=active]').should('be.checked');
  57. cy.logoutCMS();
  58. });
  59. it('should delete added page', () => {
  60. cy.loginCMS();
  61. cy.visitCMS('/cp/');
  62. cy.contains('table.data-table tbody tr td a', 'Some test page').parentsUntil('tr').parent().find('td a.ico.delete').click();
  63. cy.actionWait();
  64. cy.get('table.data-table tbody tr').should('have.length', 3);
  65. cy.logoutCMS();
  66. });
  67. });