Skip to content

Commit 5ae0563

Browse files
committed
Merge branch 'master' of github.com:microting/eform-angular-frontend
2 parents b980811 + e901e57 commit 5ae0563

File tree

13 files changed

+183
-12
lines changed

13 files changed

+183
-12
lines changed
Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
11
export default {
22
username: '[email protected]',
3-
password: 'Qq1234567$'
3+
password: 'Qq1234567$',
4+
newPassword: '2Times2WillDo'
45
};

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

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -37,6 +37,13 @@ class LoginPage extends Page {
3737
this.loginBtn.click();
3838
browser.pause(10000);
3939
}
40+
public loginWithNewPassword(): void {
41+
browser.pause(10000);
42+
this.usernameInput.setValue(LoginConstants.username);
43+
this.passwordInput.setValue(LoginConstants.newPassword);
44+
this.loginBtn.click();
45+
browser.pause(10000);
46+
}
4047
}
4148

4249
const loginPage = new LoginPage();

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

Lines changed: 19 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -20,14 +20,22 @@ export class Navbar {
2020
// return browser.element('#sign-out');
2121
return browser.element(`//*[contains(@class, 'fadeInDropdown')]//*[contains(text(), 'Log ud')]`);
2222
}
23-
23+
public get settingsBtn() {
24+
return browser.element(`//*[contains(@class, 'fadeInDropdown')]//*[contains(text(), 'Indstillinger')]`);
25+
}
26+
public get changePasswordBtn() {
27+
return browser.element(`//*[contains(@class, 'fadeInDropdown')]//*[contains(text(), 'Skift adgangskode')]`);
28+
}
2429
public get deviceUsersBtn() {
2530
return this.clickOnHeaderMenuItem(' Enhedsbrugere ');
2631
}
2732

2833
public clickOnHeaderMenuItem(headerMenuItem) {
2934
return browser.element(`//*[@id="header"]//*[text()="${headerMenuItem}"]`).element('..').element('..');
3035
}
36+
public verifyHeaderMenuItem(headerMenuItem) {
37+
return browser.element(`//*[@id="header"]//*[text()="${headerMenuItem}"]`);
38+
}
3139

3240
public logout() {
3341
this.clickOnHeaderMenuItem('John Smith').click();
@@ -36,12 +44,21 @@ export class Navbar {
3644
this.logoutBtn.click();
3745
}
3846

47+
public goToProfileSettings() {
48+
this.clickOnHeaderMenuItem('John Smith').click();
49+
this.settingsBtn.click();
50+
browser.pause(8000);
51+
}
3952
public goToApplicationSettings() {
4053
this.advancedDropdown();
4154
this.applicationSettingsBtn();
4255
browser.pause(15000);
4356
}
44-
57+
public goToPasswordSettings() {
58+
this.clickOnHeaderMenuItem('John Smith').click();
59+
this.changePasswordBtn.click();
60+
browser.pause(8000);
61+
}
4562
public goToDeviceUsersPage() {
4663
this.deviceUsersBtn.click();
4764
browser.pause(20000);
Lines changed: 42 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,42 @@
1+
import {PageWithNavbarPage} from './PageWithNavbar.page';
2+
3+
export class PasswordSettings extends PageWithNavbarPage {
4+
constructor() {
5+
super();
6+
}
7+
public get oldPasswordField() {
8+
return browser.element('#oldPassword');
9+
}
10+
public get newPasswordField() {
11+
return browser.element('#newPassword');
12+
}
13+
public get newPasswordConfirmationField() {
14+
return browser.element('#newPasswordConfirmation');
15+
}
16+
public get saveBtn() {
17+
return browser.element('#changePasswordSaveBtn');
18+
}
19+
public setNewPassword() {
20+
this.oldPasswordField.addValue('Qq1234567$');
21+
browser.pause(1000);
22+
this.newPasswordField.addValue('2Times2WillDo');
23+
browser.pause(1000);
24+
this.newPasswordConfirmationField.addValue('2Times2WillDo');
25+
browser.pause(1000);
26+
this.saveBtn.click();
27+
browser.pause(12000);
28+
29+
}
30+
public revertToOldPassword() {
31+
this.oldPasswordField.addValue('2Times2WillDo');
32+
browser.pause(1000);
33+
this.newPasswordField.addValue('Qq1234567$');
34+
browser.pause(1000);
35+
this.newPasswordConfirmationField.addValue('Qq1234567$');
36+
browser.pause(1000);
37+
this.saveBtn.click();
38+
}
39+
}
40+
41+
const passwordSettings = new PasswordSettings();
42+
export default passwordSettings;
Lines changed: 28 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,28 @@
1+
import {PageWithNavbarPage} from './PageWithNavbar.page';
2+
3+
export class ProfileSettings extends PageWithNavbarPage {
4+
constructor() {
5+
super();
6+
}
7+
8+
public get languageSelector() {
9+
return browser.element('#ProfileLanguageSelector');
10+
}
11+
12+
public get saveBtn() {
13+
return browser.element('#ProfileSettingsSaveBtn');
14+
}
15+
16+
public saveProfileSettings() {
17+
this.saveBtn.click();
18+
browser.pause(12000);
19+
}
20+
public chooseLanguage(language: string) {
21+
this.languageSelector.click();
22+
browser.pause(2000);
23+
browser.element(`//*[@id="ProfileLanguageSelector"]//*[text()="${language}"]`).click();
24+
browser.pause(1000);
25+
}
26+
}
27+
const profileSettings = new ProfileSettings();
28+
export default profileSettings;

eform-client/e2e/Tests/main-page-eforms/my-eforms.filter-eform.spec.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -33,4 +33,4 @@ describe('My eforms', function () {
3333
});
3434
});
3535
});
36-
}
36+
});
Lines changed: 34 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,34 @@
1+
import loginPage from '../../Page objects/Login.page';
2+
import myEformsPage from '../../Page objects/MyEforms.page';
3+
import passwordSettings from '../../Page objects/PasswordSettings.page';
4+
5+
const expect = require('chai').expect;
6+
7+
describe('Password settings', function () {
8+
before(function () {
9+
loginPage.open('/');
10+
loginPage.login();
11+
myEformsPage.Navbar.goToPasswordSettings();
12+
});
13+
14+
it('should set password to 2Times2WillDo', function () {
15+
passwordSettings.setNewPassword();
16+
passwordSettings.Navbar.logout();
17+
loginPage.open('/');
18+
loginPage.loginWithNewPassword();
19+
myEformsPage.Navbar.goToPasswordSettings();
20+
// expect(myEformsPage.Navbar.verifyHeaderMenuItem('My eForms')).equal('My eForms');
21+
// expect(myEformsPage.Navbar.verifyHeaderMenuItem('Device Users')).equal('Device Users');
22+
// expect(myEformsPage.Navbar.verifyHeaderMenuItem('Advanced')).equal('Advanced');
23+
});
24+
it('should revert to old password', function () {
25+
passwordSettings.revertToOldPassword();
26+
passwordSettings.Navbar.logout();
27+
loginPage.open('/');
28+
loginPage.login();
29+
myEformsPage.Navbar.goToPasswordSettings();
30+
// expect(myEformsPage.Navbar.verifyHeaderMenuItem('Meine eForms')).equal('Meine eForms');
31+
// expect(myEformsPage.Navbar.verifyHeaderMenuItem('Gerätebenutzer')).equal('Gerätebenutzer');
32+
// expect(myEformsPage.Navbar.verifyHeaderMenuItem('Fortgeschritten')).equal('Fortgeschritten');
33+
});
34+
});
Lines changed: 37 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,37 @@
1+
import loginPage from '../../Page objects/Login.page';
2+
import myEformsPage from '../../Page objects/MyEforms.page';
3+
import profileSettings from '../../Page objects/ProfileSettings.page';
4+
5+
const expect = require('chai').expect;
6+
7+
describe('Profile Settings', function () {
8+
before(function () {
9+
loginPage.open('/');
10+
loginPage.login();
11+
myEformsPage.Navbar.goToProfileSettings();
12+
});
13+
it('should set language to English', function () {
14+
profileSettings.chooseLanguage('English');
15+
profileSettings.saveProfileSettings();
16+
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');
20+
});
21+
it('should set language to German', function () {
22+
profileSettings.chooseLanguage('German');
23+
profileSettings.saveProfileSettings();
24+
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');
28+
});
29+
it('should set language to Danish', function () {
30+
profileSettings.chooseLanguage('Danish');
31+
profileSettings.saveProfileSettings();
32+
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');
36+
});
37+
});

eform-client/src/app/components/footer/footer.component.html

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,6 @@
1414
</div>
1515
</div>
1616
<div class="footer-copyright text-center p-2 copyright-section">
17-
<div>© Microting A/S 2007 - 2018 <div class="footer-version">v{{version}}</div> </div>
17+
<div>© Microting A/S 2007 - 2019 <div class="footer-version">v{{version}}</div> </div>
1818
</div>
1919
</footer>

eform-client/src/app/modules/account-management/components/profile/change-password/change-password.component.html

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
<eform-page-subheader [title]="'Change password' | translate">
22
<div class="p-3">
33
<button
4+
id="changePasswordSaveBtn"
45
class="btn btn-success"
56
[disabled]="!changePassword.form.valid"
67
(click)="updateUserPassword()">{{ 'Save' | translate }}

0 commit comments

Comments
 (0)