access-to-side-bar.spec.ts 6.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176
  1. context('Access to sidebar', () => {
  2. const ssPrefix = 'access-to-sidebar-';
  3. beforeEach(() => {
  4. // login
  5. cy.fixture("user-admin.json").then(user => {
  6. cy.login(user.username, user.password);
  7. });
  8. // collapse sidebar
  9. cy.collapseSidebar(false);
  10. });
  11. it('Successfully show/collapse sidebar', () => {
  12. cy.visit('/');
  13. cy.screenshot(`${ssPrefix}1-sidebar-shown`, {capture: 'viewport'});
  14. cy.getByTestid('grw-navigation-resize-button').click({force: true});
  15. cy.screenshot(`${ssPrefix}2-sidebar-collapsed`, {capture: 'viewport'});
  16. });
  17. it('Successully change side bar size of latest changes', () => {
  18. cy.visit('/');
  19. cy.getByTestid('grw-sidebar-nav-primary-recent-changes').click();
  20. cy.getByTestid('grw-navigation-resize-button').click({force: true});
  21. cy.get('#grw-sidebar-contents-wrapper').within(() => {
  22. cy.get('#recentChangesResize').click({force: true});
  23. cy.screenshot(`${ssPrefix}1-current-sidebar-size`);
  24. cy.get('#recentChangesResize').click({force: true});
  25. cy.screenshot(`${ssPrefix}2-switch-sidebar-size`);
  26. });
  27. });
  28. it('Successfully access page from sidebar ', () => {
  29. cy.visit('/');
  30. cy.getByTestid('grw-sidebar-nav-primary-recent-changes').click();
  31. cy.getByTestid('grw-navigation-resize-button').click({force: true});
  32. cy.screenshot(`${ssPrefix}1-recent-changes-page-list`);
  33. cy.get('.list-group-item').eq(0).within(() => {
  34. cy.get('span.grw-page-path-hierarchical-link').find('a').click();
  35. })
  36. cy.screenshot(`${ssPrefix}2-open-first-recent-changes-page`);
  37. cy.visit('/Sandbox');
  38. // Add tag
  39. cy.get('#edit-tags-btn-wrapper-for-tooltip > a').click({force: true});
  40. cy.get('#edit-tag-modal').should('be.visible');
  41. cy.get('#edit-tag-modal').within(() => {
  42. cy.get('.rbt-input-main').type('test');
  43. cy.get('#tag-typeahead-asynctypeahead').should('be.visible');
  44. cy.get('#tag-typeahead-asynctypeahead-item-0').should('be.visible');
  45. cy.get('a#tag-typeahead-asynctypeahead-item-0').click({force: true})
  46. });
  47. cy.get('#edit-tag-modal').within(() => {
  48. cy.get('div.modal-footer > button').click();
  49. });
  50. cy.visit('/Sandbox');
  51. cy.get('.grw-taglabels-container > form > a').contains('test').click();
  52. cy.getByTestid('search-result-base').should('be.visible');
  53. cy.getByTestid('search-result-list').should('be.visible');
  54. cy.getByTestid('search-result-content').should('be.visible');
  55. cy.screenshot(`${ssPrefix}3-click-on-tag-results`, {capture: 'viewport'});
  56. });
  57. it('Successfully create a custom sidebar page', () => {
  58. const content = '# HELLO \n ## Hello\n ### Hello';
  59. cy.visit('/');
  60. cy.getByTestid('grw-sidebar-nav-primary-custom-sidebar').click();
  61. cy.getByTestid('grw-navigation-resize-button').click({force: true});
  62. cy.screenshot(`${ssPrefix}1-click-on-custom-sidebar`)
  63. cy.get('.grw-sidebar-content-header.h5').find('a').click();
  64. cy.get('.CodeMirror textarea').type(content, {force: true});
  65. cy.screenshot(`${ssPrefix}2-custom-sidebar-editor`);
  66. cy.get('.dropup > .btn-submit').click();
  67. cy.get('body').should('not.have.class', 'on-edit');
  68. cy.screenshot(`${ssPrefix}3-custom-sidebar-created`);
  69. });
  70. it('Successfully performed page operation from "page tree"', () => {
  71. cy.visit('/');
  72. cy.getByTestid('grw-sidebar-nav-primary-page-tree').click();
  73. cy.getByTestid('grw-navigation-resize-button').click({force: true});
  74. cy.screenshot(`${ssPrefix}1-access-to-page-tree`);
  75. cy.get('.grw-pagetree-triangle-btn').eq(0).click();
  76. cy.screenshot(`${ssPrefix}2-hide-page-tree-item`);
  77. cy.get('.grw-pagetree-triangle-btn').eq(0).click();
  78. cy.get('.grw-pagetree-item-children').eq(0).within(() => {
  79. cy.getByTestid('open-page-item-control-btn').find('button').eq(0).invoke('css','display','block').click()
  80. });
  81. cy.screenshot(`${ssPrefix}3-click-three-dots-menu`);
  82. cy.get('.dropdown-menu.show').should('be.visible').within(() => {
  83. cy.getByTestid('add-remove-bookmark-btn').click();
  84. });
  85. cy.screenshot(`${ssPrefix}4-add-bookmark`);
  86. cy.get('.grw-pagetree-item-children').eq(0).within(() => {
  87. cy.getByTestid('open-page-item-control-btn').find('button').eq(0).invoke('css','display','block').click()
  88. });
  89. cy.get('.dropdown-menu.show').should('be.visible').within(() => {
  90. cy.getByTestid('open-page-duplicate-modal-btn').click();
  91. });
  92. cy.getByTestid('page-duplicate-modal').should('be.visible').within(() => {
  93. cy.get('.rbt-input-main').type('_test');
  94. cy.screenshot(`${ssPrefix}5-duplicate-page`);
  95. cy.get('.modal-header > button').click();
  96. });
  97. cy.get('.grw-pagetree-item-children').eq(0).within(() => {
  98. cy.getByTestid('open-page-item-control-btn').find('button').eq(0).invoke('css','display','block').click()
  99. });
  100. cy.get('.dropdown-menu.show').should('be.visible').within(() => {
  101. cy.getByTestid('open-page-move-rename-modal-btn').click();
  102. });
  103. cy.get('.grw-pagetree-item-children').eq(0).within(() => {
  104. cy.get('.flex-fill > input').type('_newname');
  105. });
  106. cy.screenshot(`${ssPrefix}6-rename-page`);
  107. cy.get('body').click(0,0);
  108. cy.get('.grw-pagetree-item-children').eq(0).within(() => {
  109. cy.getByTestid('open-page-item-control-btn').find('button').eq(0).invoke('css','display','block').click()
  110. });
  111. cy.get('.dropdown-menu.show').should('be.visible').within(() => {
  112. cy.getByTestid('open-page-delete-modal-btn').click();
  113. });
  114. cy.getByTestid('page-delete-modal').should('be.visible').within(() => {
  115. cy.screenshot(`${ssPrefix}7-delete-page`);
  116. cy.get('.modal-header > button').click();
  117. });
  118. });
  119. it('Successfully performed page operation from "Tags" ', () => {
  120. cy.visit('/');
  121. cy.getByTestid('grw-sidebar-nav-primary-tags').click();
  122. cy.getByTestid('grw-navigation-resize-button').click({force: true});
  123. cy.screenshot(`${ssPrefix}1-access-to-tags`);
  124. cy.get('.grw-container-convertible > div > .btn-primary').click({force: true});
  125. cy.screenshot(`${ssPrefix}2-check-all-tags`);
  126. cy.getByTestid('grw-tags-list').within(() => {
  127. cy.get('ul').find('a').contains('test').click();
  128. });
  129. cy.screenshot(`${ssPrefix}3-page-list-with-tag`);
  130. cy.getByTestid('search-result-list').within(() => {
  131. cy.get('li').eq(0).within(() => {
  132. cy.getByTestid('open-page-item-control-btn').click();
  133. });
  134. });
  135. cy.screenshot(`${ssPrefix}4-tags-click-three-dots-menu`);
  136. cy.getByTestid('search-result-list').within(() => {
  137. cy.get('li').eq(0).within(() => {
  138. cy.getByTestid('open-page-duplicate-modal-btn').click();
  139. });
  140. });
  141. cy.getByTestid('page-duplicate-modal').should('be.visible').within(() => {
  142. cy.get('.rbt-input-main').type('screen');
  143. });
  144. cy.screenshot(`${ssPrefix}5-duplicate-page-from-tags`);
  145. cy.getByTestid('page-duplicate-modal').should('be.visible').within(() => {
  146. cy.get('.modal-footer > button').click();
  147. });
  148. });
  149. });