Skip to content

Commit 4aeef39

Browse files
committed
Adding test for Name Changing, password change and can assert language change.
1 parent e901e57 commit 4aeef39

File tree

8 files changed

+101
-16
lines changed

8 files changed

+101
-16
lines changed

eform-client/e2e/Page objects/Navbar.page.ts

Lines changed: 9 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -26,6 +26,9 @@ export class Navbar {
2626
public get changePasswordBtn() {
2727
return browser.element(`//*[contains(@class, 'fadeInDropdown')]//*[contains(text(), 'Skift adgangskode')]`);
2828
}
29+
public get userAdministrationBtn() {
30+
return browser.element(`//*[contains(@class, 'fadeInDropdown')]//*[contains(text(), 'Brugeradministration')]`);
31+
}
2932
public get deviceUsersBtn() {
3033
return this.clickOnHeaderMenuItem(' Enhedsbrugere ');
3134
}
@@ -34,7 +37,7 @@ export class Navbar {
3437
return browser.element(`//*[@id="header"]//*[text()="${headerMenuItem}"]`).element('..').element('..');
3538
}
3639
public verifyHeaderMenuItem(headerMenuItem) {
37-
return browser.element(`//*[@id="header"]//*[text()="${headerMenuItem}"]`);
40+
return browser.getText(`//*[@id="header"]//*[contains(text(), '${headerMenuItem}')]`);
3841
}
3942

4043
public logout() {
@@ -54,6 +57,11 @@ export class Navbar {
5457
this.applicationSettingsBtn();
5558
browser.pause(15000);
5659
}
60+
public goToUserAdministration() {
61+
this.clickOnHeaderMenuItem('John Smith').click();
62+
this.userAdministrationBtn.click();
63+
browser.pause(8000);
64+
}
5765
public goToPasswordSettings() {
5866
this.clickOnHeaderMenuItem('John Smith').click();
5967
this.changePasswordBtn.click();
Lines changed: 46 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,46 @@
1+
import {PageWithNavbarPage} from './PageWithNavbar.page';
2+
3+
export class UserAdministration extends PageWithNavbarPage {
4+
constructor() {
5+
super();
6+
}
7+
public get editUserBtn() {
8+
return browser.element('#userAdministrationEditBtn');
9+
}
10+
public get firstNameBox() {
11+
return browser.element('#editFirstName');
12+
}
13+
public get lastNameBox() {
14+
return browser.element('#editLastName');
15+
}
16+
public get saveBtn() {
17+
return browser.element('#editUserSaveBtn');
18+
}
19+
public setNewName(firstName: string, lastName: string) {
20+
this.editUserBtn.click();
21+
browser.pause(2000);
22+
this.firstNameBox.clearElement();
23+
browser.pause(500);
24+
this.firstNameBox.addValue(firstName);
25+
this.lastNameBox.clearElement();
26+
browser.pause(500);
27+
this.lastNameBox.addValue(lastName);
28+
browser.pause(500);
29+
this.saveBtn.click();
30+
}
31+
public revertToOldName(firstName: string, lastName: string) {
32+
this.editUserBtn.click();
33+
browser.pause(2000);
34+
this.firstNameBox.clearElement();
35+
browser.pause(500);
36+
this.firstNameBox.addValue(firstName);
37+
this.lastNameBox.clearElement();
38+
browser.pause(500);
39+
this.lastNameBox.addValue(lastName);
40+
browser.pause(500);
41+
this.saveBtn.click();
42+
}
43+
}
44+
45+
const userAdministration = new UserAdministration();
46+
export default userAdministration;

eform-client/e2e/Tests/password-settings/password-settings.changepassword.spec.ts renamed to eform-client/e2e/Tests/password-settings/password-settings.change-password.spec.ts

File renamed without changes.

eform-client/e2e/Tests/profile-settings/profile-settings.language.spec.ts

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -14,24 +14,24 @@ describe('Profile Settings', function () {
1414
profileSettings.chooseLanguage('English');
1515
profileSettings.saveProfileSettings();
1616
browser.refresh();
17-
// expect(myEformsPage.Navbar.verifyHeaderMenuItem('My eForms')).equal('My eForms');
18-
// expect(myEformsPage.Navbar.verifyHeaderMenuItem('Device Users')).equal('Device Users');
19-
// expect(myEformsPage.Navbar.verifyHeaderMenuItem('Advanced')).equal('Advanced');
17+
expect(myEformsPage.Navbar.verifyHeaderMenuItem('My eForms')).equal('My eForms');
18+
expect(myEformsPage.Navbar.verifyHeaderMenuItem('Device Users')).equal('Device Users');
19+
expect(myEformsPage.Navbar.verifyHeaderMenuItem('Advanced')).equal('Advanced');
2020
});
2121
it('should set language to German', function () {
2222
profileSettings.chooseLanguage('German');
2323
profileSettings.saveProfileSettings();
2424
browser.refresh();
25-
// expect(myEformsPage.Navbar.verifyHeaderMenuItem('Meine eForms')).equal('Meine eForms');
26-
// expect(myEformsPage.Navbar.verifyHeaderMenuItem('Gerätebenutzer')).equal('Gerätebenutzer');
27-
// expect(myEformsPage.Navbar.verifyHeaderMenuItem('Fortgeschritten')).equal('Fortgeschritten');
25+
expect(myEformsPage.Navbar.verifyHeaderMenuItem('Meine eForms')).equal('Meine eForms');
26+
expect(myEformsPage.Navbar.verifyHeaderMenuItem('Gerätebenutzer')).equal('Gerätebenutzer');
27+
expect(myEformsPage.Navbar.verifyHeaderMenuItem('Fortgeschritten')).equal('Fortgeschritten');
2828
});
2929
it('should set language to Danish', function () {
3030
profileSettings.chooseLanguage('Danish');
3131
profileSettings.saveProfileSettings();
3232
browser.refresh();
33-
// expect(myEformsPage.Navbar.verifyHeaderMenuItem('Mine eForms')).equal('Mine eForms');
34-
// expect(myEformsPage.Navbar.verifyHeaderMenuItem('Enhedsbrugere')).equal('Enhedsbrugere');
35-
// expect(myEformsPage.Navbar.verifyHeaderMenuItem('Avanceret')).equal('Avanceret');
33+
expect(myEformsPage.Navbar.verifyHeaderMenuItem('Mine eForms')).equal('Mine eForms');
34+
expect(myEformsPage.Navbar.verifyHeaderMenuItem('Enhedsbrugere')).equal('Enhedsbrugere');
35+
expect(myEformsPage.Navbar.verifyHeaderMenuItem('Avanceret')).equal('Avanceret');
3636
});
3737
});
Lines changed: 28 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,28 @@
1+
import loginPage from '../../Page objects/Login.page';
2+
import myEformsPage from '../../Page objects/MyEforms.page';
3+
import userAdministration from '../../Page objects/UserAdministration.page';
4+
5+
const expect = require('chai').expect;
6+
7+
describe('User administration settings', function () {
8+
before(function () {
9+
loginPage.open('/');
10+
loginPage.login();
11+
myEformsPage.Navbar.goToUserAdministration();
12+
});
13+
14+
it('should set name to Foo Bar', function () {
15+
userAdministration.setNewName('Foo', 'Bar');
16+
browser.pause(2000);
17+
expect(browser.getText(`//*[contains(@class, 'table')]//*[contains(text(), 'Foo Bar')]`)).equal('Foo Bar');
18+
// expect(myEformsPage.Navbar.verifyHeaderMenuItem('Device Users')).equal('Device Users');
19+
// expect(myEformsPage.Navbar.verifyHeaderMenuItem('Advanced')).equal('Advanced');
20+
});
21+
it('should revert to old name', function () {
22+
userAdministration.revertToOldName('John', 'Smith');
23+
browser.pause(2000);
24+
expect(browser.getText(`//*[contains(@class, 'table')]//*[contains(text(), 'John Smith')]`)).equal('John Smith');
25+
// expect(myEformsPage.Navbar.verifyHeaderMenuItem('Gerätebenutzer')).equal('Gerätebenutzer');
26+
// expect(myEformsPage.Navbar.verifyHeaderMenuItem('Fortgeschritten')).equal('Fortgeschritten');
27+
});
28+
});

eform-client/src/app/modules/account-management/components/users/user-edit/user-edit-modal.component.html

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -79,7 +79,8 @@ <h3>{{'Edit User' | translate}}</h3>
7979
</div>
8080
</div>
8181
<div class="modal-footer">
82-
<button class="btn btn-success" [disabled]="!editForm.form.valid"
82+
<button id="editUserSaveBtn"
83+
class="btn btn-success" [disabled]="!editForm.form.valid"
8384
(click)="updateUser()">{{ 'Save' | translate }}
8485
</button>
8586
<button class="btn btn-accent text-black-50" (click)="frame.hide()">{{'Cancel' | translate}}</button>

eform-client/src/app/modules/account-management/components/users/users-page/users-page.component.html

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -43,7 +43,8 @@
4343
</td>
4444
<td *ngIf="userClaims.usersUpdate || userClaims.usersDelete">
4545
<div class="d-flex flex-row justify-content-center">
46-
<button class="btn btn-accent text-black-50 btn-icon mb-2" *ngIf="userClaims.usersUpdate"
46+
<button id="userAdministrationEditBtn"
47+
class="btn btn-accent text-black-50 btn-icon mb-2" *ngIf="userClaims.usersUpdate"
4748
mdbTooltip="{{'Edit User' | translate}}"
4849
(click)="openEditModal(userInfoModel.id)">
4950
<i class="material-icons">

eform-client/wdio-step2.conf.js

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -10,15 +10,16 @@ exports.config = {
1010
// directory is where your package.json resides, so `wdio` will be called from there.
1111
//
1212
specs: [
13-
// 'e2e/Tests/application-settings/application-settings.login-page.spec.ts',
14-
// 'e2e/Tests/application-settings/application-settings.site-header.spec.ts',
13+
'e2e/Tests/application-settings/application-settings.login-page.spec.ts',
14+
'e2e/Tests/application-settings/application-settings.site-header.spec.ts',
1515
// 'e2e/Tests/device-users/device-users.add.spec.ts',
1616
// 'e2e/Tests/device-users/device-users.add.spec.ts'
1717
// 'e2e/Tests/device-users/device-users.edit.spec.ts',
1818
// 'e2e\\Tests\\device-users\\device-users.delete.spec.ts',
1919
// 'e2e\\Tests\\main-page-eforms\\my-eforms.create-eform.spec.ts',
20-
// 'e2e/Tests/profile-settings/profile-settings.language.spec.ts',
21-
'e2e/Tests/password-settings/password-settings.changepassword.spec.ts',
20+
'e2e/Tests/profile-settings/profile-settings.language.spec.ts',
21+
'e2e/Tests/password-settings/password-settings.change-password.spec.ts',
22+
'e2e/Tests/user-administration/user-administration.name-change.spec.ts',
2223
// 'e2e/Tests/main-page-eforms/my-eforms.sort-eform.spec.ts',
2324
// 'e2e/Tests/main-page-eforms/my-eforms.create-eform.spec.ts',
2425
// 'e2e\\Tests\\main-page-eforms\\my-eforms.sort-eform.spec.ts',

0 commit comments

Comments
 (0)