Skip to content

Commit 61eaed2

Browse files
Copilotrenemadsen
andcommitted
Fix device-users tests by waiting for list reload after operations
Co-authored-by: renemadsen <[email protected]>
1 parent 88bdb82 commit 61eaed2

File tree

3 files changed

+29
-10
lines changed

3 files changed

+29
-10
lines changed

eform-client/cypress/e2e/d/device-users.add.spec.cy.ts

Lines changed: 11 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -30,8 +30,10 @@ describe('Device users page - Add new device user', function () {
3030
cy.get('#lastName').should('be.visible').type(surname);
3131

3232
cy.intercept('POST', '**/api/device-users/create').as('createUser');
33+
cy.intercept('POST', '**/api/device-users/index').as('reloadDeviceUsers');
3334
cy.get('#saveCreateBtn').should('be.visible').should('be.enabled').click();
3435
cy.wait('@createUser', { timeout: 30000 });
36+
cy.wait('@reloadDeviceUsers', { timeout: 30000 });
3537
cy.get('#newDeviceUserBtn').should('be.visible');
3638

3739
// Verify the user was created
@@ -75,34 +77,35 @@ describe('Device users page - Should not add new device user', function () {
7577
it('should NOT add device user with only last name', () => {
7678
const lastName = generateRandmString();
7779

78-
cy.get('#newDeviceUserBtn').should('be.visible').click();
80+
cy.get('#newDeviceUserBtn', { timeout: 10000 }).should('be.visible').click();
7981
cy.get('#lastName').should('be.visible').type(lastName);
8082

8183
// Verify save button is disabled
8284
cy.get('#saveCreateBtn').should('be.disabled');
8385

8486
cy.get('#cancelCreateBtn').should('be.visible').click();
85-
cy.wait(500);
87+
cy.get('#newDeviceUserBtn', { timeout: 10000 }).should('be.visible');
8688
});
8789

8890
it('should NOT add device user without first and last names', () => {
89-
cy.get('#newDeviceUserBtn').should('be.visible').click();
91+
cy.get('#newDeviceUserBtn', { timeout: 10000 }).should('be.visible').click();
9092
cy.get('#firstName').should('be.visible');
9193

9294
// Verify save button is disabled
9395
cy.get('#saveCreateBtn').should('be.disabled');
9496

9597
cy.get('#cancelCreateBtn').should('be.visible').click();
98+
cy.get('#newDeviceUserBtn', { timeout: 10000 }).should('be.visible');
9699
cy.wait(500);
97100
});
98101

99102
it('should NOT create user if cancel was clicked', () => {
100103
deviceUsersPage.rowNum().then((rowCountBeforeCreation) => {
101-
cy.get('#newDeviceUserBtn').should('be.visible').click();
104+
cy.get('#newDeviceUserBtn', { timeout: 10000 }).should('be.visible').click();
102105
cy.get('#firstName').should('be.visible');
103106
cy.wait(500);
104107
cy.get('#cancelCreateBtn').should('be.visible').click();
105-
cy.get('#newDeviceUserBtn').should('be.visible');
108+
cy.get('#newDeviceUserBtn', { timeout: 10000 }).should('be.visible');
106109
cy.wait(500);
107110

108111
deviceUsersPage.rowNum().then((rowCountAfterCreation) => {
@@ -119,10 +122,12 @@ describe('Device users page - Should not add new device user', function () {
119122
cy.get('#deviceUserFirstName').each(($el, index) => {
120123
if ($el.text() === nameDeviceUser) {
121124
cy.intercept('POST', '**/api/device-users/delete').as('deleteUser');
125+
cy.intercept('POST', '**/api/device-users/index').as('reloadDeviceUsers');
122126
cy.get('#deleteDeviceUserBtn').eq(index).click();
123127
cy.get('#saveDeleteBtn').should('be.visible').click();
124128
cy.wait('@deleteUser', { timeout: 30000 });
125-
cy.get('#newDeviceUserBtn').should('be.visible');
129+
cy.wait('@reloadDeviceUsers', { timeout: 30000 });
130+
cy.get('#newDeviceUserBtn', { timeout: 10000 }).should('be.visible');
126131
return false; // break the loop
127132
}
128133
});

eform-client/cypress/e2e/d/device-users.delete.spec.cy.ts

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -43,19 +43,25 @@ describe('Device users page - Delete device user', function () {
4343
});
4444

4545
it('should delete device user successfully', () => {
46+
cy.intercept('POST', '**/api/device-users/index').as('loadDeviceUsers1');
4647
deviceUsersPage.Navbar.goToDeviceUsersPage();
48+
cy.wait('@loadDeviceUsers1', { timeout: 30000 });
4749

4850
deviceUsersPage.rowNum().then((rowNumBeforeDelete) => {
4951
cy.get('#deviceUserId').should('be.visible');
5052

5153
// Click delete button on last row
5254
cy.intercept('POST', '**/api/device-users/delete').as('deleteUser');
55+
cy.intercept('POST', '**/api/device-users/index').as('reloadAfterDelete');
5356
cy.get('#deleteDeviceUserBtn').last().should('be.visible').click();
5457
cy.get('#saveDeleteBtn').should('be.visible').click();
5558
cy.wait('@deleteUser', { timeout: 30000 });
59+
cy.wait('@reloadAfterDelete', { timeout: 30000 });
5660

5761
// Navigate back to device users page
62+
cy.intercept('POST', '**/api/device-users/index').as('loadDeviceUsers2');
5863
deviceUsersPage.Navbar.goToDeviceUsersPage();
64+
cy.wait('@loadDeviceUsers2', { timeout: 30000 });
5965

6066
// Verify count decreased
6167
deviceUsersPage.rowNum().then((rowNumAfterDelete) => {

eform-client/cypress/e2e/d/device-users.edit.spec.cy.ts

Lines changed: 12 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -19,9 +19,11 @@ describe('Device users page - Edit device user', function () {
1919
cy.get('#lastName').should('be.visible').type(lastName);
2020

2121
cy.intercept('POST', '**/api/device-users/create').as('createUser');
22+
cy.intercept('POST', '**/api/device-users/index').as('reloadDeviceUsers');
2223
cy.get('#saveCreateBtn').should('be.visible').click();
2324
cy.wait('@createUser', { timeout: 30000 });
24-
cy.get('#newDeviceUserBtn').should('be.visible');
25+
cy.wait('@reloadDeviceUsers', { timeout: 30000 });
26+
cy.get('#newDeviceUserBtn', { timeout: 10000 }).should('be.visible');
2527
});
2628

2729
it('should edit device user\'s first name', () => {
@@ -41,9 +43,11 @@ describe('Device users page - Edit device user', function () {
4143
cy.get('#firstName').clear().type(newName);
4244

4345
cy.intercept('POST', '**/api/device-users/update').as('updateUser');
46+
cy.intercept('POST', '**/api/device-users/index').as('reloadDeviceUsers');
4447
cy.get('#saveEditBtn').should('be.visible').click();
4548
cy.wait('@updateUser', { timeout: 30000 });
46-
cy.get('#newDeviceUserBtn').should('be.visible');
49+
cy.wait('@reloadDeviceUsers', { timeout: 30000 });
50+
cy.get('#newDeviceUserBtn', { timeout: 10000 }).should('be.visible');
4751

4852
// Verify changes
4953
cy.get('#deviceUserFirstName').last().should('have.text', newName);
@@ -68,9 +72,11 @@ describe('Device users page - Edit device user', function () {
6872
cy.get('#lastName').clear().type(newSurname);
6973

7074
cy.intercept('POST', '**/api/device-users/update').as('updateUser');
75+
cy.intercept('POST', '**/api/device-users/index').as('reloadDeviceUsers');
7176
cy.get('#saveEditBtn').should('be.visible').click();
7277
cy.wait('@updateUser', { timeout: 30000 });
73-
cy.get('#newDeviceUserBtn').should('be.visible');
78+
cy.wait('@reloadDeviceUsers', { timeout: 30000 });
79+
cy.get('#newDeviceUserBtn', { timeout: 10000 }).should('be.visible');
7480

7581
// Verify changes
7682
cy.get('#deviceUserFirstName').last().should('have.text', oldFirstName);
@@ -93,9 +99,11 @@ describe('Device users page - Edit device user', function () {
9399
cy.get('#lastName').clear().type(newSurname);
94100

95101
cy.intercept('POST', '**/api/device-users/update').as('updateUser');
102+
cy.intercept('POST', '**/api/device-users/index').as('reloadDeviceUsers');
96103
cy.get('#saveEditBtn').should('be.visible').click();
97104
cy.wait('@updateUser', { timeout: 30000 });
98-
cy.get('#newDeviceUserBtn').should('be.visible');
105+
cy.wait('@reloadDeviceUsers', { timeout: 30000 });
106+
cy.get('#newDeviceUserBtn', { timeout: 10000 }).should('be.visible');
99107

100108
// Verify changes
101109
cy.get('#deviceUserFirstName').last().should('have.text', newName);

0 commit comments

Comments
 (0)