Просмотр исходного кода

Merge pull request #25727 from overleaf/dp-fix-track-changes-e2e-tests

Fix broken E2E tests after reviewer role feature flag cleanup

GitOrigin-RevId: 9860d546d8a6385554f223bf15c10875089ea130
David 1 год назад
Родитель
Сommit
1354465562
2 измененных файлов с 1 добавлено и 169 удалено
  1. 1 135
      server-ce/test/editor.spec.ts
  2. 0 34
      server-ce/test/helpers/project.ts

+ 1 - 135
server-ce/test/editor.spec.ts

@@ -1,11 +1,7 @@
 import {
   createNewFile,
   createProject,
-  enableLinkSharing,
-  openFile,
   openProjectById,
-  openProjectViaLinkSharingAsUser,
-  toggleTrackChanges,
 } from './helpers/project'
 import { isExcludedBySharding, startWith } from './helpers/config'
 import { ensureUserExists, login } from './helpers/login'
@@ -71,7 +67,7 @@ describe('editor', () => {
 
       cy.log('remove word from dictionary')
       cy.get('button').contains('Menu').click()
-      cy.get('button').contains('Edit').click()
+      cy.get('button#dictionary-settings').contains('Edit').click()
       cy.get('[id="dictionary-modal"]').within(() => {
         cy.findByText(word)
           .parent()
@@ -92,136 +88,6 @@ describe('editor', () => {
     })
   })
 
-  describe('collaboration', () => {
-    beforeWithReRunOnTestRetry(function () {
-      enableLinkSharing().then(({ linkSharingReadAndWrite }) => {
-        const email = 'collaborator@example.com'
-        login(email)
-        openProjectViaLinkSharingAsUser(
-          linkSharingReadAndWrite,
-          projectName,
-          email
-        )
-      })
-
-      login('user@example.com')
-      waitForCompileRateLimitCoolOff(() => {
-        openProjectById(projectId)
-      })
-    })
-
-    it('track-changes', () => {
-      cy.log('disable track-changes before populating doc')
-      toggleTrackChanges(false)
-
-      const fileName = createNewFile()
-      const oldContent = 'oldContent'
-      cy.get('.cm-line').type(`${oldContent}\n\nstatic`)
-
-      cy.log('recompile to force flush')
-      recompile()
-
-      cy.log('enable track-changes for everyone')
-      toggleTrackChanges(true)
-
-      login('collaborator@example.com')
-      waitForCompileRateLimitCoolOff(() => {
-        openProjectById(projectId)
-      })
-      openFile(fileName, 'static')
-
-      cy.log('make changes in main file')
-      // cy.type() "clicks" in the center of the selected element before typing. This "click" discards the text as selected by the dblclick.
-      // Go down to the lower level event based typing, the frontend tests in web use similar events.
-      cy.get('.cm-editor').as('editor')
-      cy.get('@editor').findByText(oldContent).dblclick()
-      cy.get('@editor').trigger('keydown', { key: 'Delete' })
-      cy.get('@editor').trigger('keydown', { key: 'Enter' })
-      cy.get('@editor').trigger('keydown', { key: 'Enter' })
-
-      cy.log('recompile to force flush')
-      recompile()
-
-      login('user@example.com')
-      waitForCompileRateLimitCoolOff(() => {
-        openProjectById(projectId)
-      })
-      openFile(fileName, 'static')
-
-      cy.log('reject changes')
-      cy.contains('.toolbar-item', 'Review').click()
-      cy.get('.cm-content').should('not.contain.text', oldContent)
-      cy.findByText('Reject change').click({ force: true })
-      cy.contains('.toolbar-item', 'Review').click()
-
-      cy.log('recompile to force flush')
-      recompile()
-
-      cy.log('verify the changes are applied')
-      cy.get('.cm-content').should('contain.text', oldContent)
-
-      cy.log('disable track-changes for everyone again')
-      toggleTrackChanges(false)
-    })
-
-    it('track-changes rich text', () => {
-      cy.log('disable track-changes before populating doc')
-      toggleTrackChanges(false)
-
-      const fileName = createNewFile()
-      const oldContent = 'oldContent'
-      cy.get('.cm-line').type(`\\section{{}${oldContent}}\n\nstatic`)
-
-      cy.log('recompile to force flush')
-      recompile()
-
-      cy.log('enable track-changes for everyone')
-      toggleTrackChanges(true)
-
-      login('collaborator@example.com')
-      waitForCompileRateLimitCoolOff(() => {
-        openProjectById(projectId)
-      })
-      cy.log('enable visual editor and make changes in main file')
-      cy.findByText('Visual Editor').click()
-
-      openFile(fileName, 'static')
-
-      // cy.type() "clicks" in the center of the selected element before typing. This "click" discards the text as selected by the dblclick.
-      // Go down to the lower level event based typing, the frontend tests in web use similar events.
-      cy.get('.cm-editor').as('editor')
-      cy.get('@editor').findByText(oldContent).dblclick()
-      cy.get('@editor').trigger('keydown', { key: 'Delete' })
-      cy.get('@editor').trigger('keydown', { key: 'Enter' })
-      cy.get('@editor').trigger('keydown', { key: 'Enter' })
-
-      cy.log('recompile to force flush')
-      recompile()
-
-      login('user@example.com')
-      waitForCompileRateLimitCoolOff(() => {
-        openProjectById(projectId)
-      })
-      openFile(fileName, 'static')
-
-      cy.log('reject changes')
-      cy.contains('.toolbar-item', 'Review').click()
-      cy.get('.cm-content').should('not.contain.text', oldContent)
-      cy.findAllByText('Reject change').first().click({ force: true })
-      cy.contains('.toolbar-item', 'Review').click()
-
-      cy.log('recompile to force flush')
-      recompile()
-
-      cy.log('verify the changes are applied in the visual editor')
-      cy.findByText('Visual Editor').click()
-      cy.get('.cm-content').should('contain.text', oldContent)
-
-      cy.log('disable track-changes for everyone again')
-      toggleTrackChanges(false)
-    })
-  })
-
   describe('editor', () => {
     it('renders jpg', () => {
       cy.findByTestId('file-tree').findByText('frog.jpg').click()

+ 0 - 34
server-ce/test/helpers/project.ts

@@ -215,37 +215,3 @@ export function createNewFile() {
 
   return fileName
 }
-
-export function toggleTrackChanges(state: boolean) {
-  cy.findByText('Review').click()
-  cy.get('.track-changes-menu-button').then(el => {
-    // when the menu is expanded renders the `expand_more` icon,
-    // and the `chevron_right` icon when it's collapsed
-    if (!el.text().includes('expand_more')) {
-      el.click()
-    }
-  })
-
-  cy.findByText('Everyone')
-    .parent()
-    .within(() => {
-      cy.get('.form-check-input').then(el => {
-        if (el.prop('checked') === state) return
-
-        const id = uuid()
-        const alias = `@${id}`
-        cy.intercept({
-          method: 'POST',
-          url: '**/track_changes',
-          times: 1,
-        }).as(id)
-        if (state) {
-          cy.get('.form-check-input').check()
-        } else {
-          cy.get('.form-check-input').uncheck()
-        }
-        cy.wait(alias)
-      })
-    })
-  cy.contains('.toolbar-item', 'Review').click()
-}