Преглед изворни кода

Merge pull request #32996 from overleaf/copilot/fix-race-condition-in-stopcompile

Stabilize stopCompile Cypress helper by waiting for enabled “Stop compilation” action

GitOrigin-RevId: 16997aaccd8d65d5ff0a0a1af73a0bf5d6803832
Brian Gough пре 3 месеци
родитељ
комит
faf2fd2287
2 измењених фајлова са 9 додато и 2 уклоњено
  1. 4 1
      server-ce/test/helpers/compile.ts
  2. 5 1
      server-ce/test/sandboxed-compiles.spec.ts

+ 4 - 1
server-ce/test/helpers/compile.ts

@@ -9,7 +9,10 @@ export function stopCompile(options: { delay?: number } = {}) {
   cy.wait(delay)
   cy.log('Stop compile')
   cy.findByRole('button', { name: 'Toggle compile options menu' }).click()
-  cy.findByRole('menuitem', { name: 'Stop compilation' }).click()
+  cy.findByRole('menuitem', { name: 'Stop compilation' })
+    .should('not.have.class', 'disabled')
+    .and('not.have.attr', 'aria-disabled', 'true')
+    .click()
 }
 
 export function prepareWaitForNextCompileSlot() {

+ 5 - 1
server-ce/test/sandboxed-compiles.spec.ts

@@ -83,7 +83,11 @@ describe('SandboxedCompiles', function () {
       cy.findByText('\\maketitle').parent().click()
       cy.findByText('\\maketitle')
         .parent()
-        .type('\n\\def\\x{{}Hello!\\par\\x}\\x')
+        .type(
+          '\nFirst page\\clearpage' +
+            '\nSecond page' +
+            '\\def\\loop{{}\\let\\next\\loop\\next}\\loop'
+        )
       waitForCompileRateLimitCoolOff()
       cy.log('Start compile')
       // We need to start the compile manually because we do not want to wait for it to finish