Skip to content

Commit f2c4a2f

Browse files
authored
Merge pull request #7256 from microting/copilot/fix-aftereach-visual-editor-tests
Fix afterEach cleanup pattern in Cypress visual editor tests
2 parents 78bebb6 + 259eee2 commit f2c4a2f

File tree

5 files changed

+46
-33
lines changed

5 files changed

+46
-33
lines changed

eform-client/cypress/e2e/MyEforms.page.ts

Lines changed: 19 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -159,20 +159,26 @@ class MyEformsPage extends PageWithNavbarPage {
159159

160160
public clearEFormTable() {
161161
cy.wait(500);
162-
const rowCount = this.rowNum();
163-
let indexForDelete = 1;
164-
for (let i = 1; i <= rowCount; i++) {
165-
const eformsRowObject = this.getEformRowObj(i, false);
166-
if (
167-
eformsRowObject &&
168-
eformsRowObject.deleteBtn &&
169-
(eformsRowObject.deleteBtn.should('be.visible'))
170-
) {
171-
eformsRowObject.deleteEForm();
172-
} else {
173-
indexForDelete += 1;
162+
// Check if table has any rows before trying to delete
163+
cy.get('body').then($body => {
164+
if ($body.find('.eform-id').length > 0) {
165+
// Table has rows, delete them
166+
cy.get('.eform-id').its('length').then((rowCount) => {
167+
for (let i = 1; i <= rowCount; i++) {
168+
const eformsRowObject = this.getEformRowObj(1, false); // Always delete first row
169+
if (
170+
eformsRowObject &&
171+
eformsRowObject.deleteBtn
172+
) {
173+
eformsRowObject.deleteBtn.should('be.visible').click();
174+
cy.wait(500);
175+
cy.get('#eFormDeleteDeleteBtn').should('be.visible').click();
176+
cy.wait(500);
177+
}
178+
}
179+
});
174180
}
175-
}
181+
});
176182
}
177183

178184
createNewEform(

eform-client/cypress/e2e/j/eform-visual-editor.create-eform.spec.cy.ts

Lines changed: 6 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,9 @@
11
import loginPage from '../Login.page';
22
import {generateRandmString, getRandomInt, selectValueInNgSelectorNoSelector} from '../helper-functions';
3+
import { Navbar } from '../Navbar.page';
4+
import { myEformsPage } from '../MyEforms.page';
5+
6+
const navbar = new Navbar();
37

48
describe('Visual editor - Create eForm', () => {
59
beforeEach(() => {
@@ -684,10 +688,7 @@ describe('Visual editor - Create eForm', () => {
684688

685689
afterEach(() => {
686690
// Clean up - delete created eForm
687-
cy.get('#cancelEditBtn').click();
688-
cy.wait(500);
689-
cy.get('#delete-eform-btn-0').click();
690-
cy.get('#eFormDeleteDeleteBtn').click();
691-
cy.wait(1000);
691+
navbar.goToMyEForms();
692+
myEformsPage.clearEFormTable();
692693
});
693694
});

eform-client/cypress/e2e/j/eform-visual-editor.edit-eform.spec.cy.ts

Lines changed: 7 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,9 @@
11
import loginPage from '../Login.page';
22
import {selectValueInNgSelectorNoSelector} from '../helper-functions';
3+
import { Navbar } from '../Navbar.page';
4+
import { myEformsPage } from '../MyEforms.page';
5+
6+
const navbar = new Navbar();
37

48

59
// @ts-ignore
@@ -510,10 +514,8 @@ describe('My eforms', () => {
510514
// });
511515

512516
afterEach(() => {
513-
/* ==== Generated with Cypress Studio ==== */
514-
cy.get('#cancelEditBtn').click();
515-
cy.get('#delete-eform-btn-0').click();
516-
cy.get('#eFormDeleteDeleteBtn').click();
517-
/* ==== End Cypress Studio ==== */
517+
// Clean up - delete created eForm
518+
navbar.goToMyEForms();
519+
myEformsPage.clearEFormTable();
518520
});
519521
});

eform-client/cypress/e2e/j/eform-visual-editor.edit-xml.spec.cy.ts

Lines changed: 7 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,8 @@
11
import loginPage from '../Login.page';
2+
import { Navbar } from '../Navbar.page';
3+
import { myEformsPage } from '../MyEforms.page';
4+
5+
const navbar = new Navbar();
26

37

48
// @ts-ignore
@@ -79,10 +83,8 @@ describe('My eforms', () => {
7983
// });
8084

8185
afterEach(() => {
82-
/* ==== Generated with Cypress Studio ==== */
83-
cy.get('#cancelEditBtn').click();
84-
cy.get('#delete-eform-btn-0 > .mat-button-wrapper > .mat-icon').click();
85-
cy.get('#eFormDeleteDeleteBtn > .mat-button-wrapper').click();
86-
/* ==== End Cypress Studio ==== */
86+
// Clean up - delete created eForm
87+
navbar.goToMyEForms();
88+
myEformsPage.clearEFormTable();
8789
});
8890
});

eform-client/cypress/e2e/j/eform-visual-editor.multi-language.spec.cy.ts

Lines changed: 7 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,8 @@
11
import loginPage from '../Login.page';
2+
import { Navbar } from '../Navbar.page';
3+
import { myEformsPage } from '../MyEforms.page';
4+
5+
const navbar = new Navbar();
26

37
// @ts-ignore
48
describe('My eforms', () => {
@@ -69,10 +73,8 @@ describe('My eforms', () => {
6973
// });
7074

7175
afterEach(() => {
72-
/* ==== Generated with Cypress Studio ==== */
73-
cy.get('#cancelEditBtn').click();
74-
cy.get('#delete-eform-btn-0 > .mat-button-wrapper > .mat-icon').click();
75-
cy.get('#eFormDeleteDeleteBtn > .mat-button-wrapper').click();
76-
/* ==== End Cypress Studio ==== */
76+
// Clean up - delete created eForm
77+
navbar.goToMyEForms();
78+
myEformsPage.clearEFormTable();
7779
});
7880
});

0 commit comments

Comments
 (0)