@eclipse-che/che-e2e 7.64.0-dev-db63138 → 7.64.0-dev-f0466d9
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/configs/inversify.types.ts +2 -2
- package/configs/mocharc.ts +2 -2
- package/constants/TestConstants.ts +2 -2
- package/constants/TimeoutConstants.ts +1 -1
- package/dist/configs/inversify.types.js.map +1 -1
- package/dist/configs/mocharc.js +2 -2
- package/dist/configs/mocharc.js.map +1 -1
- package/dist/constants/TestConstants.js.map +1 -1
- package/dist/constants/TimeoutConstants.js.map +1 -1
- package/dist/driver/ChromeDriver.js.map +1 -1
- package/dist/pageobjects/dashboard/CreateWorkspace.js +5 -5
- package/dist/pageobjects/dashboard/CreateWorkspace.js.map +1 -1
- package/dist/pageobjects/dashboard/Dashboard.js.map +1 -1
- package/dist/specs/MochaHooks.js.map +1 -1
- package/dist/specs/SmokeTest.spec.js +49 -0
- package/dist/specs/SmokeTest.spec.js.map +1 -0
- package/dist/specs/miscellaneous/PredefinedNamespace.spec.js +1 -1
- package/dist/specs/miscellaneous/PredefinedNamespace.spec.js.map +1 -1
- package/dist/tests-library/WorkspaceHandlingTests.js +12 -0
- package/dist/tests-library/WorkspaceHandlingTests.js.map +1 -1
- package/dist/utils/CheReporter.js +5 -2
- package/dist/utils/CheReporter.js.map +1 -1
- package/dist/utils/DriverHelper.js.map +1 -1
- package/dist/utils/Logger.js.map +1 -1
- package/dist/utils/ScreenCatcher.js.map +1 -1
- package/dist/utils/request-handlers/headers/CheMultiuserAuthorizationHeaderHandler.js.map +1 -1
- package/dist/utils/vsc/GitUtil.js +1 -6
- package/dist/utils/vsc/GitUtil.js.map +1 -1
- package/dist/utils/workspace/ApiUrlResolver.js.map +1 -1
- package/dist/utils/workspace/TestWorkspaceUtil.js +1 -1
- package/dist/utils/workspace/TestWorkspaceUtil.js.map +1 -1
- package/driver/ChromeDriver.ts +2 -2
- package/package.json +1 -1
- package/pageobjects/dashboard/CreateWorkspace.ts +6 -6
- package/pageobjects/dashboard/Dashboard.ts +15 -19
- package/pageobjects/dashboard/Workspaces.ts +20 -20
- package/pageobjects/dashboard/workspace-details/WorkspaceDetails.ts +16 -16
- package/pageobjects/git-providers/OauthPage.ts +12 -12
- package/pageobjects/ide/CheCodeLocatorLoader.ts +1 -1
- package/pageobjects/login/OcpUserLoginPage.ts +1 -1
- package/pageobjects/login/RedHatLoginPage.ts +6 -6
- package/pageobjects/login/RegularUserOcpCheLoginPage.ts +1 -1
- package/pageobjects/openshift/CheLoginPage.ts +3 -3
- package/pageobjects/openshift/OcpLoginPage.ts +8 -8
- package/specs/MochaHooks.ts +7 -7
- package/specs/SmokeTest.spec.ts +50 -0
- package/specs/devfiles/Quarkus.spec.ts +6 -6
- package/specs/factory/Factory.spec.ts +17 -17
- package/specs/factory/NoSetupRepoFactory.spec.ts +21 -21
- package/specs/factory/RefusedOAuthFactory.spec.ts +21 -21
- package/specs/miscellaneous/PredefinedNamespace.spec.ts +5 -5
- package/tests-library/WorkspaceHandlingTests.ts +13 -0
- package/tslint.json +4 -4
- package/utils/BrowserTabsUtil.ts +7 -7
- package/utils/CheReporter.ts +12 -8
- package/utils/DriverHelper.ts +31 -31
- package/utils/Logger.ts +8 -8
- package/utils/ScreenCatcher.ts +8 -7
- package/utils/request-handlers/headers/CheMultiuserAuthorizationHeaderHandler.ts +2 -1
- package/utils/vsc/GitUtil.ts +1 -4
- package/utils/workspace/ApiUrlResolver.ts +3 -2
- package/utils/workspace/TestWorkspaceUtil.ts +22 -22
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TestWorkspaceUtil.js","sourceRoot":"","sources":["../../../utils/workspace/TestWorkspaceUtil.ts"],"names":[],"mappings":";AAAA;;;;;;;;wEAQwE;;;;;;;;;;;;;;;;;;AAExE,4BAA0B;AAC1B,iEAA8D;AAC9D,yCAA+C;AAC/C,kDAA+C;AAC/C,uDAAoD;AACpD,2DAA2C;AAC3C,mFAAgF;AAChF,mEAAwD;AACxD,sCAAmC;AACnC,
|
|
1
|
+
{"version":3,"file":"TestWorkspaceUtil.js","sourceRoot":"","sources":["../../../utils/workspace/TestWorkspaceUtil.ts"],"names":[],"mappings":"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"}
|
package/driver/ChromeDriver.ts
CHANGED
|
@@ -28,7 +28,7 @@ export class ChromeDriver implements IDriver {
|
|
|
28
28
|
return this.driver;
|
|
29
29
|
}
|
|
30
30
|
|
|
31
|
-
async setWindowSize() {
|
|
31
|
+
async setWindowSize(): Promise<void> {
|
|
32
32
|
await this.driver
|
|
33
33
|
.manage()
|
|
34
34
|
.window()
|
|
@@ -49,7 +49,7 @@ export class ChromeDriver implements IDriver {
|
|
|
49
49
|
}
|
|
50
50
|
|
|
51
51
|
private getDriverBuilder(options: Options): Builder {
|
|
52
|
-
const disableW3copts = { 'goog:chromeOptions' : { 'w3c' : false }};
|
|
52
|
+
const disableW3copts: object = { 'goog:chromeOptions' : { 'w3c' : false }};
|
|
53
53
|
let builder: Builder = new Builder()
|
|
54
54
|
.forBrowser('chrome')
|
|
55
55
|
.setChromeOptions(options);
|
package/package.json
CHANGED
|
@@ -44,12 +44,6 @@ export class CreateWorkspace {
|
|
|
44
44
|
await this.driverHelper.waitAndClick(sampleLocator, timeout);
|
|
45
45
|
}
|
|
46
46
|
|
|
47
|
-
async startWorkspaceUsingFactory(factoryUrl: string, timeout: number = TimeoutConstants.TS_CLICK_DASHBOARD_ITEM_TIMEOUT): Promise<void> {
|
|
48
|
-
Logger.debug(`CreateWorkspace.startWorkspaceUsingFactory factoryUrl: "${factoryUrl}"`);
|
|
49
|
-
await this.driverHelper.waitVisibility(CreateWorkspace.FACTORY_URL_LOCATOR, timeout);
|
|
50
|
-
await this.driverHelper.type(CreateWorkspace.FACTORY_URL_LOCATOR, Key.chord(factoryUrl, Key.ENTER), timeout);
|
|
51
|
-
}
|
|
52
|
-
|
|
53
47
|
async clickOnSampleForSpecificEditor(sampleName: string, timeout: number = TimeoutConstants.TS_CLICK_DASHBOARD_ITEM_TIMEOUT): Promise<void> {
|
|
54
48
|
await this.clickOnEditorsDropdownListButton(sampleName, timeout);
|
|
55
49
|
|
|
@@ -59,6 +53,12 @@ export class CreateWorkspace {
|
|
|
59
53
|
await this.driverHelper.waitAndClick(sampleLocator, timeout);
|
|
60
54
|
}
|
|
61
55
|
|
|
56
|
+
async importFromGitUsingUI(factoryUrl: string, timeout: number = TimeoutConstants.TS_CLICK_DASHBOARD_ITEM_TIMEOUT): Promise<void> {
|
|
57
|
+
Logger.debug(`CreateWorkspace.importFromGitUsingUI factoryUrl: "${factoryUrl}"`);
|
|
58
|
+
await this.driverHelper.waitVisibility(CreateWorkspace.FACTORY_URL_LOCATOR, timeout);
|
|
59
|
+
await this.driverHelper.type(CreateWorkspace.FACTORY_URL_LOCATOR, Key.chord(factoryUrl, Key.ENTER), timeout);
|
|
60
|
+
}
|
|
61
|
+
|
|
62
62
|
private async clickOnEditorsDropdownListButton(sampleName: string, timeout: number): Promise<void> {
|
|
63
63
|
Logger.debug(`CreateWorkspace.clickOnSample sampleName: "${sampleName}, editor ${TestConstants.TS_SELENIUM_EDITOR}"`);
|
|
64
64
|
|
|
@@ -9,17 +9,13 @@
|
|
|
9
9
|
**********************************************************************/
|
|
10
10
|
import { inject, injectable } from 'inversify';
|
|
11
11
|
import 'reflect-metadata';
|
|
12
|
-
import { CLASSES
|
|
12
|
+
import { CLASSES } from '../../configs/inversify.types';
|
|
13
13
|
import { By } from 'selenium-webdriver';
|
|
14
14
|
import { DriverHelper } from '../../utils/DriverHelper';
|
|
15
15
|
import { TestConstants } from '../../constants/TestConstants';
|
|
16
16
|
import { TimeoutConstants } from '../../constants/TimeoutConstants';
|
|
17
17
|
import { Workspaces } from './Workspaces';
|
|
18
18
|
import { Logger } from '../../utils/Logger';
|
|
19
|
-
import { ICheLoginPage } from '../login/ICheLoginPage';
|
|
20
|
-
import { RegularUserOcpCheLoginPage } from '../login/RegularUserOcpCheLoginPage';
|
|
21
|
-
import { OcpRedHatLoginPage } from '../login/OcpRedHatLoginPage';
|
|
22
|
-
import { e2eContainer } from '../../configs/inversify.config';
|
|
23
19
|
|
|
24
20
|
@injectable()
|
|
25
21
|
export class Dashboard {
|
|
@@ -45,7 +41,7 @@ export class Dashboard {
|
|
|
45
41
|
@inject(CLASSES.Workspaces) private readonly workspaces: Workspaces) {
|
|
46
42
|
}
|
|
47
43
|
|
|
48
|
-
async stopWorkspaceByUI(workspaceName: string) {
|
|
44
|
+
async stopWorkspaceByUI(workspaceName: string): Promise<void> {
|
|
49
45
|
Logger.debug(`Dashboard.stopWorkspaceByUI "${workspaceName}"`);
|
|
50
46
|
|
|
51
47
|
await this.clickWorkspacesButton();
|
|
@@ -57,7 +53,7 @@ export class Dashboard {
|
|
|
57
53
|
await this.workspaces.waitWorkspaceWithStoppedStatus(workspaceName);
|
|
58
54
|
}
|
|
59
55
|
|
|
60
|
-
async deleteStoppedWorkspaceByUI(workspaceName: string) {
|
|
56
|
+
async deleteStoppedWorkspaceByUI(workspaceName: string): Promise<void> {
|
|
61
57
|
Logger.debug(`Dashboard.deleteStoppedWorkspaceByUI "${workspaceName}"`);
|
|
62
58
|
|
|
63
59
|
await this.clickWorkspacesButton();
|
|
@@ -68,7 +64,7 @@ export class Dashboard {
|
|
|
68
64
|
await this.workspaces.waitWorkspaceListItemAbcence(workspaceName);
|
|
69
65
|
}
|
|
70
66
|
|
|
71
|
-
async stopAndRemoveWorkspaceByUI(workspaceName: string) {
|
|
67
|
+
async stopAndRemoveWorkspaceByUI(workspaceName: string): Promise<void> {
|
|
72
68
|
Logger.debug(`Dashboard.stopAndRemoveWorkspaceByUI "${workspaceName}"`);
|
|
73
69
|
|
|
74
70
|
await this.stopWorkspaceByUI(workspaceName);
|
|
@@ -76,69 +72,69 @@ export class Dashboard {
|
|
|
76
72
|
await this.workspaces.waitWorkspaceListItemAbcence(workspaceName);
|
|
77
73
|
}
|
|
78
74
|
|
|
79
|
-
async openDashboard() {
|
|
75
|
+
async openDashboard(): Promise<void> {
|
|
80
76
|
Logger.debug('Dashboard.openDashboard');
|
|
81
77
|
await this.driverHelper.getDriver().navigate().to(TestConstants.TS_SELENIUM_BASE_URL);
|
|
82
78
|
await this.waitPage();
|
|
83
79
|
|
|
84
80
|
}
|
|
85
81
|
|
|
86
|
-
async waitPage(timeout: number = TimeoutConstants.TS_SELENIUM_LOAD_PAGE_TIMEOUT) {
|
|
82
|
+
async waitPage(timeout: number = TimeoutConstants.TS_SELENIUM_LOAD_PAGE_TIMEOUT): Promise<void> {
|
|
87
83
|
Logger.debug('Dashboard.waitPage');
|
|
88
84
|
|
|
89
85
|
await this.driverHelper.waitVisibility(By.xpath(Dashboard.WORKSPACES_BUTTON_XPATH), timeout);
|
|
90
86
|
await this.driverHelper.waitVisibility(By.xpath(Dashboard.CREATE_WORKSPACE_BUTTON_XPATH), timeout);
|
|
91
87
|
}
|
|
92
88
|
|
|
93
|
-
async clickWorkspacesButton(timeout: number = TimeoutConstants.TS_CLICK_DASHBOARD_ITEM_TIMEOUT) {
|
|
89
|
+
async clickWorkspacesButton(timeout: number = TimeoutConstants.TS_CLICK_DASHBOARD_ITEM_TIMEOUT): Promise<void> {
|
|
94
90
|
Logger.debug('Dashboard.clickWorkspacesButton');
|
|
95
91
|
|
|
96
92
|
await this.driverHelper.waitAndClick(By.xpath(Dashboard.WORKSPACES_BUTTON_XPATH), timeout);
|
|
97
93
|
}
|
|
98
94
|
|
|
99
|
-
async clickCreateWorkspaceButton(timeout: number = TimeoutConstants.TS_CLICK_DASHBOARD_ITEM_TIMEOUT) {
|
|
95
|
+
async clickCreateWorkspaceButton(timeout: number = TimeoutConstants.TS_CLICK_DASHBOARD_ITEM_TIMEOUT): Promise<void> {
|
|
100
96
|
Logger.debug('Dashboard.clickCreateWorkspaceButton');
|
|
101
97
|
|
|
102
98
|
await this.driverHelper.waitAndClick(By.xpath(Dashboard.CREATE_WORKSPACE_BUTTON_XPATH), timeout);
|
|
103
99
|
}
|
|
104
100
|
|
|
105
|
-
async getLoaderAlert(timeout: number = TimeoutConstants.TS_WAIT_LOADER_PRESENCE_TIMEOUT) {
|
|
101
|
+
async getLoaderAlert(timeout: number = TimeoutConstants.TS_WAIT_LOADER_PRESENCE_TIMEOUT): Promise<string> {
|
|
106
102
|
Logger.debug('Dashboard.getLoaderAlert');
|
|
107
103
|
|
|
108
104
|
return await this.driverHelper.waitAndGetText(By.xpath(Dashboard.LOADER_ALERT_XPATH), timeout);
|
|
109
105
|
}
|
|
110
106
|
|
|
111
|
-
async waitLoader(timeout: number = TimeoutConstants.TS_WAIT_LOADER_PRESENCE_TIMEOUT) {
|
|
107
|
+
async waitLoader(timeout: number = TimeoutConstants.TS_WAIT_LOADER_PRESENCE_TIMEOUT): Promise<void> {
|
|
112
108
|
Logger.debug('Dashboard.waitLoader');
|
|
113
109
|
|
|
114
110
|
await this.driverHelper.waitAllPresence(By.xpath(Dashboard.LOADER_PAGE_STEP_TITLES_XPATH), timeout);
|
|
115
111
|
}
|
|
116
112
|
|
|
117
|
-
async waitLoaderDisappearance(timeout: number = TimeoutConstants.TS_WAIT_LOADER_ABSENCE_TIMEOUT) {
|
|
113
|
+
async waitLoaderDisappearance(timeout: number = TimeoutConstants.TS_WAIT_LOADER_ABSENCE_TIMEOUT): Promise<void> {
|
|
118
114
|
Logger.debug('Dashboard.waitLoaderDisappearance');
|
|
119
115
|
|
|
120
116
|
await this.driverHelper.waitDisappearance(By.xpath(Dashboard.LOADER_PAGE_STEP_TITLES_XPATH), timeout);
|
|
121
117
|
}
|
|
122
118
|
|
|
123
|
-
async waitDisappearanceNavigationMenu(timeout: number = TimeoutConstants.TS_COMMON_DASHBOARD_WAIT_TIMEOUT) {
|
|
119
|
+
async waitDisappearanceNavigationMenu(timeout: number = TimeoutConstants.TS_COMMON_DASHBOARD_WAIT_TIMEOUT): Promise<void> {
|
|
124
120
|
Logger.debug('Dashboard.waitDisappearanceNavigationMenu');
|
|
125
121
|
|
|
126
122
|
await this.driverHelper.waitDisappearance(By.id('chenavmenu'), timeout);
|
|
127
123
|
}
|
|
128
124
|
|
|
129
|
-
async waitWorkspaceStartingPage(timeout: number = TimeoutConstants.TS_COMMON_DASHBOARD_WAIT_TIMEOUT) {
|
|
125
|
+
async waitWorkspaceStartingPage(timeout: number = TimeoutConstants.TS_COMMON_DASHBOARD_WAIT_TIMEOUT): Promise<void> {
|
|
130
126
|
Logger.debug(`Dashboard.waitWorkspaceStartingPage`);
|
|
131
127
|
|
|
132
128
|
await this.driverHelper.waitPresence(By.css(Dashboard.WORKSPACE_STARTING_PAGE_CSS), timeout);
|
|
133
129
|
}
|
|
134
130
|
|
|
135
|
-
async getRecentWorkspaceName(timeout: number = TimeoutConstants.TS_COMMON_DASHBOARD_WAIT_TIMEOUT) {
|
|
131
|
+
async getRecentWorkspaceName(timeout: number = TimeoutConstants.TS_COMMON_DASHBOARD_WAIT_TIMEOUT): Promise<string> {
|
|
136
132
|
Logger.debug(`Dashboard.getRecentWorkspaceName`);
|
|
137
133
|
|
|
138
134
|
return await this.driverHelper.waitAndGetText(By.css('[data-testid="recent-workspace-item"]'), timeout);
|
|
139
135
|
}
|
|
140
136
|
|
|
141
|
-
async logout(timeout: number = TimeoutConstants.TS_COMMON_DASHBOARD_WAIT_TIMEOUT) {
|
|
137
|
+
async logout(timeout: number = TimeoutConstants.TS_COMMON_DASHBOARD_WAIT_TIMEOUT): Promise<void> {
|
|
142
138
|
Logger.debug(`Dashboard.logout`);
|
|
143
139
|
|
|
144
140
|
await this.openDashboard();
|
|
@@ -28,25 +28,25 @@ export class Workspaces {
|
|
|
28
28
|
constructor(@inject(CLASSES.DriverHelper) private readonly driverHelper: DriverHelper) {
|
|
29
29
|
}
|
|
30
30
|
|
|
31
|
-
async waitPage(timeout: number = TimeoutConstants.TS_SELENIUM_LOAD_PAGE_TIMEOUT) {
|
|
31
|
+
async waitPage(timeout: number = TimeoutConstants.TS_SELENIUM_LOAD_PAGE_TIMEOUT): Promise<void> {
|
|
32
32
|
Logger.debug('Workspaces.waitPage');
|
|
33
33
|
|
|
34
34
|
await this.driverHelper.waitVisibility(By.xpath(Workspaces.ADD_WORKSPACE_BUTTON_XPATH), timeout);
|
|
35
35
|
}
|
|
36
36
|
|
|
37
|
-
async clickAddWorkspaceButton(timeout: number = TimeoutConstants.TS_CLICK_DASHBOARD_ITEM_TIMEOUT) {
|
|
37
|
+
async clickAddWorkspaceButton(timeout: number = TimeoutConstants.TS_CLICK_DASHBOARD_ITEM_TIMEOUT): Promise<void> {
|
|
38
38
|
Logger.debug('Workspaces.clickAddWorkspaceButton');
|
|
39
39
|
|
|
40
40
|
await this.driverHelper.waitAndClick(By.xpath(Workspaces.ADD_WORKSPACE_BUTTON_XPATH), timeout);
|
|
41
41
|
}
|
|
42
42
|
|
|
43
|
-
async clickOpenButton(workspaceName: string, timeout: number = TimeoutConstants.TS_SELENIUM_LOAD_PAGE_TIMEOUT) {
|
|
43
|
+
async clickOpenButton(workspaceName: string, timeout: number = TimeoutConstants.TS_SELENIUM_LOAD_PAGE_TIMEOUT): Promise<void> {
|
|
44
44
|
Logger.debug('Workspaces.clickOpenButton');
|
|
45
45
|
|
|
46
46
|
await this.driverHelper.waitAndClick(this.getOpenButtonLocator(workspaceName), timeout);
|
|
47
47
|
}
|
|
48
48
|
|
|
49
|
-
async waitWorkspaceListItem(workspaceName: string, timeout: number = TimeoutConstants.TS_COMMON_DASHBOARD_WAIT_TIMEOUT) {
|
|
49
|
+
async waitWorkspaceListItem(workspaceName: string, timeout: number = TimeoutConstants.TS_COMMON_DASHBOARD_WAIT_TIMEOUT): Promise<void> {
|
|
50
50
|
Logger.debug(`Workspaces.waitWorkspaceListItem "${workspaceName}"`);
|
|
51
51
|
|
|
52
52
|
const workspaceListItemLocator: By = By.xpath(this.getWorkspaceListItemLocator(workspaceName));
|
|
@@ -54,7 +54,7 @@ export class Workspaces {
|
|
|
54
54
|
await this.driverHelper.waitVisibility(workspaceListItemLocator, timeout);
|
|
55
55
|
}
|
|
56
56
|
|
|
57
|
-
async waitWorkspaceWithRunningStatus(workspaceName: string, timeout: number = TimeoutConstants.TS_COMMON_DASHBOARD_WAIT_TIMEOUT) {
|
|
57
|
+
async waitWorkspaceWithRunningStatus(workspaceName: string, timeout: number = TimeoutConstants.TS_COMMON_DASHBOARD_WAIT_TIMEOUT): Promise<void> {
|
|
58
58
|
Logger.debug(`Workspaces.waitWorkspaceWithRunningStatus "${workspaceName}"`);
|
|
59
59
|
|
|
60
60
|
const runningStatusLocator: By = this.getWorkspaceStatusLocator(workspaceName, WorkspaceStatusUI.Running);
|
|
@@ -62,7 +62,7 @@ export class Workspaces {
|
|
|
62
62
|
await this.driverHelper.waitVisibility(runningStatusLocator, timeout);
|
|
63
63
|
}
|
|
64
64
|
|
|
65
|
-
async waitWorkspaceWithStoppedStatus(workspaceName: string, timeout: number = TimeoutConstants.TS_DASHBOARD_WORKSPACE_STOP_TIMEOUT) {
|
|
65
|
+
async waitWorkspaceWithStoppedStatus(workspaceName: string, timeout: number = TimeoutConstants.TS_DASHBOARD_WORKSPACE_STOP_TIMEOUT): Promise<void> {
|
|
66
66
|
Logger.debug(`Workspaces.waitWorkspaceWithStoppedStatus "${workspaceName}"`);
|
|
67
67
|
|
|
68
68
|
const stoppedStatusLocator: By = this.getWorkspaceStatusLocator(workspaceName, WorkspaceStatusUI.Stopped);
|
|
@@ -70,7 +70,7 @@ export class Workspaces {
|
|
|
70
70
|
await this.driverHelper.waitVisibility(stoppedStatusLocator, timeout);
|
|
71
71
|
}
|
|
72
72
|
|
|
73
|
-
async clickWorkspaceListItem(workspaceName: string, timeout: number = TimeoutConstants.TS_CLICK_DASHBOARD_ITEM_TIMEOUT) {
|
|
73
|
+
async clickWorkspaceListItem(workspaceName: string, timeout: number = TimeoutConstants.TS_CLICK_DASHBOARD_ITEM_TIMEOUT): Promise<void> {
|
|
74
74
|
Logger.debug(`Workspaces.clickWorkspaceListItem "${workspaceName}"`);
|
|
75
75
|
|
|
76
76
|
const workspaceListItemLocator: By = By.xpath(this.getWorkspaceListItemLocator(workspaceName));
|
|
@@ -78,31 +78,31 @@ export class Workspaces {
|
|
|
78
78
|
await this.driverHelper.waitAndClick(workspaceListItemLocator, timeout);
|
|
79
79
|
}
|
|
80
80
|
|
|
81
|
-
async clickActionsButton(workspaceName: string) {
|
|
81
|
+
async clickActionsButton(workspaceName: string): Promise<void> {
|
|
82
82
|
Logger.debug(`Workspaces.clickActionsButton of the '${workspaceName}' list item`);
|
|
83
83
|
|
|
84
84
|
await this.driverHelper.waitAndClick(this.getActionsLocator(workspaceName));
|
|
85
85
|
}
|
|
86
86
|
|
|
87
|
-
async waitActionsPopup(workspaceName: string, timeout: number = TimeoutConstants.TS_CONTEXT_MENU_TIMEOUT) {
|
|
87
|
+
async waitActionsPopup(workspaceName: string, timeout: number = TimeoutConstants.TS_CONTEXT_MENU_TIMEOUT): Promise<void> {
|
|
88
88
|
Logger.debug(`Workspaces.waitActionsPopup of the '${workspaceName}' list item`);
|
|
89
89
|
|
|
90
90
|
await this.driverHelper.waitVisibility(this.getExpandedActionsLocator(workspaceName), timeout);
|
|
91
91
|
}
|
|
92
92
|
|
|
93
|
-
async openActionsPopup(workspaceName: string, timeout: number = TimeoutConstants.TS_CONTEXT_MENU_TIMEOUT) {
|
|
93
|
+
async openActionsPopup(workspaceName: string, timeout: number = TimeoutConstants.TS_CONTEXT_MENU_TIMEOUT): Promise<void> {
|
|
94
94
|
Logger.debug(`Workspaces.openActionsPopup for the '${workspaceName}' list item`);
|
|
95
95
|
await this.clickActionsButton(workspaceName);
|
|
96
96
|
await this.waitActionsPopup(workspaceName, timeout);
|
|
97
97
|
}
|
|
98
98
|
|
|
99
|
-
async clickActionsDeleteButton(workspaceName: string) {
|
|
99
|
+
async clickActionsDeleteButton(workspaceName: string): Promise<void> {
|
|
100
100
|
Logger.debug(`Workspaces.clickActionsDeleteButton for the '${workspaceName}' list item`);
|
|
101
101
|
|
|
102
102
|
await this.driverHelper.waitAndClick(this.getActionsPopupButtonLocator(workspaceName, 'Delete Workspace'));
|
|
103
103
|
}
|
|
104
104
|
|
|
105
|
-
async clickActionsStopWorkspaceButton(workspaceName: string) {
|
|
105
|
+
async clickActionsStopWorkspaceButton(workspaceName: string): Promise<void> {
|
|
106
106
|
Logger.debug(`Workspaces.clickActionsStopWorkspaceButton for the '${workspaceName}' list item`);
|
|
107
107
|
// todo: workaround because of issue CRW-3649
|
|
108
108
|
try {
|
|
@@ -115,7 +115,7 @@ export class Workspaces {
|
|
|
115
115
|
}
|
|
116
116
|
}
|
|
117
117
|
|
|
118
|
-
async waitDeleteWorkspaceConfirmationWindow(timeout: number = TimeoutConstants.TS_DASHBOARD_WORKSPACE_STOP_TIMEOUT) {
|
|
118
|
+
async waitDeleteWorkspaceConfirmationWindow(timeout: number = TimeoutConstants.TS_DASHBOARD_WORKSPACE_STOP_TIMEOUT): Promise<void> {
|
|
119
119
|
Logger.debug(`Workspaces.waitDeleteWorkspaceConfirmationWindow`);
|
|
120
120
|
|
|
121
121
|
const confirmationWindowLocator: By = By.xpath(`//div[@aria-label='Delete workspaces confirmation window']`);
|
|
@@ -124,7 +124,7 @@ export class Workspaces {
|
|
|
124
124
|
}
|
|
125
125
|
|
|
126
126
|
|
|
127
|
-
async clickToDeleteConfirmationCheckbox(timeout: number = TimeoutConstants.TS_DASHBOARD_WORKSPACE_STOP_TIMEOUT) {
|
|
127
|
+
async clickToDeleteConfirmationCheckbox(timeout: number = TimeoutConstants.TS_DASHBOARD_WORKSPACE_STOP_TIMEOUT): Promise<void> {
|
|
128
128
|
Logger.debug(`Workspaces.clickToDeleteConfirmationCheckbox`);
|
|
129
129
|
|
|
130
130
|
const deleteConfirmationCheckboxLocator: By = By.xpath(`//input[@data-testid='confirmation-checkbox']`);
|
|
@@ -132,7 +132,7 @@ export class Workspaces {
|
|
|
132
132
|
await this.driverHelper.waitAndClick(deleteConfirmationCheckboxLocator, timeout);
|
|
133
133
|
}
|
|
134
134
|
|
|
135
|
-
async waitAndClickEnabledConfirmationWindowDeleteButton(timeout: number = TimeoutConstants.TS_DASHBOARD_WORKSPACE_STOP_TIMEOUT) {
|
|
135
|
+
async waitAndClickEnabledConfirmationWindowDeleteButton(timeout: number = TimeoutConstants.TS_DASHBOARD_WORKSPACE_STOP_TIMEOUT): Promise<void> {
|
|
136
136
|
Logger.debug(`Workspaces.waitEnabledConfirmationWindowDeleteButton`);
|
|
137
137
|
|
|
138
138
|
const enabledConfirmationWindowDeleteButton: By = By.xpath(`//button[@data-testid='delete-workspace-button' and not(@disabled)]`);
|
|
@@ -141,7 +141,7 @@ export class Workspaces {
|
|
|
141
141
|
}
|
|
142
142
|
|
|
143
143
|
|
|
144
|
-
async deleteWorkspaceByActionsButton(workspaceName: string, timeout: number = TimeoutConstants.TS_DASHBOARD_WORKSPACE_STOP_TIMEOUT) {
|
|
144
|
+
async deleteWorkspaceByActionsButton(workspaceName: string, timeout: number = TimeoutConstants.TS_DASHBOARD_WORKSPACE_STOP_TIMEOUT): Promise<void> {
|
|
145
145
|
Logger.debug('Workspaces.deleteWorkspaceByActionsButton');
|
|
146
146
|
|
|
147
147
|
await this.waitWorkspaceListItem(workspaceName, timeout);
|
|
@@ -152,7 +152,7 @@ export class Workspaces {
|
|
|
152
152
|
await this.waitAndClickEnabledConfirmationWindowDeleteButton(timeout);
|
|
153
153
|
}
|
|
154
154
|
|
|
155
|
-
async stopWorkspaceByActionsButton(workspaceName: string, timeout: number = TimeoutConstants.TS_DASHBOARD_WORKSPACE_STOP_TIMEOUT) {
|
|
155
|
+
async stopWorkspaceByActionsButton(workspaceName: string, timeout: number = TimeoutConstants.TS_DASHBOARD_WORKSPACE_STOP_TIMEOUT): Promise<void> {
|
|
156
156
|
Logger.debug('Workspaces.stopWorkspaceByActionsButton');
|
|
157
157
|
|
|
158
158
|
await this.waitWorkspaceListItem(workspaceName, timeout);
|
|
@@ -160,7 +160,7 @@ export class Workspaces {
|
|
|
160
160
|
await this.clickActionsStopWorkspaceButton(workspaceName);
|
|
161
161
|
}
|
|
162
162
|
|
|
163
|
-
async waitWorkspaceListItemAbcence(workspaceName: string, timeout: number = TimeoutConstants.TS_COMMON_DASHBOARD_WAIT_TIMEOUT) {
|
|
163
|
+
async waitWorkspaceListItemAbcence(workspaceName: string, timeout: number = TimeoutConstants.TS_COMMON_DASHBOARD_WAIT_TIMEOUT): Promise<void> {
|
|
164
164
|
Logger.debug(`Workspaces.waitWorkspaceListItemAbcence "${workspaceName}"`);
|
|
165
165
|
|
|
166
166
|
const workspaceListItemLocator: By = By.xpath(this.getWorkspaceListItemLocator(workspaceName));
|
|
@@ -168,7 +168,7 @@ export class Workspaces {
|
|
|
168
168
|
await this.driverHelper.waitDisappearance(workspaceListItemLocator, timeout);
|
|
169
169
|
}
|
|
170
170
|
|
|
171
|
-
async getAllCreatedWorkspacesNames(timeout: number = TimeoutConstants.TS_COMMON_DASHBOARD_WAIT_TIMEOUT) {
|
|
171
|
+
async getAllCreatedWorkspacesNames(timeout: number = TimeoutConstants.TS_COMMON_DASHBOARD_WAIT_TIMEOUT): Promise<string[]> {
|
|
172
172
|
Logger.debug('Workspaces.getAllCreatedWorkspacesNames');
|
|
173
173
|
|
|
174
174
|
const workspaceNames: string[] = [];
|
|
@@ -207,7 +207,7 @@ export class Workspaces {
|
|
|
207
207
|
return By.xpath(`${this.getWorkspaceListItemLocator(workspaceName)}//li[@role='menuitem']//button[text()='${buttonText}']`);
|
|
208
208
|
}
|
|
209
209
|
|
|
210
|
-
private getOpenButtonLocator(workspaceName: string) {
|
|
210
|
+
private getOpenButtonLocator(workspaceName: string): By {
|
|
211
211
|
return By.xpath(`${this.getWorkspaceListItemLocator(workspaceName)}//td[@data-key=5]//a[text()='Open']`);
|
|
212
212
|
}
|
|
213
213
|
}
|
|
@@ -31,13 +31,13 @@ export class WorkspaceDetails {
|
|
|
31
31
|
@inject(TYPES.WorkspaceUtil) private readonly testWorkspaceUtil: ITestWorkspaceUtil,
|
|
32
32
|
@inject(CLASSES.ProjectAndFileTests) private readonly testProjectAndFileCheCode: ProjectAndFileTests) { }
|
|
33
33
|
|
|
34
|
-
async waitLoaderDisappearance(attempts: number = TestConstants.TS_SELENIUM_DEFAULT_ATTEMPTS, polling: number = TestConstants.TS_SELENIUM_DEFAULT_POLLING) {
|
|
34
|
+
async waitLoaderDisappearance(attempts: number = TestConstants.TS_SELENIUM_DEFAULT_ATTEMPTS, polling: number = TestConstants.TS_SELENIUM_DEFAULT_POLLING): Promise<void> {
|
|
35
35
|
Logger.debug('WorkspaceDetails.waitLoaderDisappearance');
|
|
36
36
|
|
|
37
37
|
await this.driverHelper.waitDisappearance(By.css(WorkspaceDetails.WORKSPACE_DETAILS_LOADER_CSS), attempts, polling);
|
|
38
38
|
}
|
|
39
39
|
|
|
40
|
-
async saveChanges() {
|
|
40
|
+
async saveChanges(): Promise<void> {
|
|
41
41
|
Logger.debug('WorkspaceDetails.saveChanges');
|
|
42
42
|
|
|
43
43
|
await this.waitSaveButton();
|
|
@@ -45,7 +45,7 @@ export class WorkspaceDetails {
|
|
|
45
45
|
await this.waitSaveButtonDisappearance();
|
|
46
46
|
}
|
|
47
47
|
|
|
48
|
-
async waitPage(workspaceName: string, timeout: number = TimeoutConstants.TS_SELENIUM_LOAD_PAGE_TIMEOUT) {
|
|
48
|
+
async waitPage(workspaceName: string, timeout: number = TimeoutConstants.TS_SELENIUM_LOAD_PAGE_TIMEOUT): Promise<void> {
|
|
49
49
|
Logger.debug(`WorkspaceDetails.saveChanges workspace: "${workspaceName}"`);
|
|
50
50
|
|
|
51
51
|
await this.waitWorkspaceTitle(workspaceName, timeout);
|
|
@@ -55,7 +55,7 @@ export class WorkspaceDetails {
|
|
|
55
55
|
await this.waitLoaderDisappearance(timeout);
|
|
56
56
|
}
|
|
57
57
|
|
|
58
|
-
async waitWorkspaceTitle(workspaceName: string, timeout: number = TimeoutConstants.TS_COMMON_DASHBOARD_WAIT_TIMEOUT) {
|
|
58
|
+
async waitWorkspaceTitle(workspaceName: string, timeout: number = TimeoutConstants.TS_COMMON_DASHBOARD_WAIT_TIMEOUT): Promise<void> {
|
|
59
59
|
Logger.debug(`WorkspaceDetails.waitWorkspaceTitle title: "${workspaceName}"`);
|
|
60
60
|
|
|
61
61
|
const workspaceTitleLocator: By = By.css(this.getWorkspaceTitleCssLocator(workspaceName));
|
|
@@ -63,25 +63,25 @@ export class WorkspaceDetails {
|
|
|
63
63
|
await this.driverHelper.waitVisibility(workspaceTitleLocator, timeout);
|
|
64
64
|
}
|
|
65
65
|
|
|
66
|
-
async waitRunButton(timeout: number = TimeoutConstants.TS_COMMON_DASHBOARD_WAIT_TIMEOUT) {
|
|
66
|
+
async waitRunButton(timeout: number = TimeoutConstants.TS_COMMON_DASHBOARD_WAIT_TIMEOUT): Promise<void> {
|
|
67
67
|
Logger.debug('WorkspaceDetails.waitRunButton');
|
|
68
68
|
|
|
69
69
|
await this.driverHelper.waitVisibility(By.css(WorkspaceDetails.RUN_BUTTON_CSS), timeout);
|
|
70
70
|
}
|
|
71
71
|
|
|
72
|
-
async clickOnRunButton(timeout: number = TimeoutConstants.TS_CLICK_DASHBOARD_ITEM_TIMEOUT) {
|
|
72
|
+
async clickOnRunButton(timeout: number = TimeoutConstants.TS_CLICK_DASHBOARD_ITEM_TIMEOUT): Promise<void> {
|
|
73
73
|
Logger.debug('WorkspaceDetails.clickOnRunButton');
|
|
74
74
|
|
|
75
75
|
await this.driverHelper.waitAndClick(By.css(WorkspaceDetails.RUN_BUTTON_CSS), timeout);
|
|
76
76
|
}
|
|
77
77
|
|
|
78
|
-
async waitOpenButton(timeout: number = TimeoutConstants.TS_COMMON_DASHBOARD_WAIT_TIMEOUT) {
|
|
78
|
+
async waitOpenButton(timeout: number = TimeoutConstants.TS_COMMON_DASHBOARD_WAIT_TIMEOUT): Promise<void> {
|
|
79
79
|
Logger.debug('WorkspaceDetails.waitOpenButton');
|
|
80
80
|
|
|
81
81
|
await this.driverHelper.waitVisibility(By.css(WorkspaceDetails.OPEN_BUTTON_CSS), timeout);
|
|
82
82
|
}
|
|
83
83
|
|
|
84
|
-
async openWorkspace(namespace: string, workspaceName: string, timeout: number = TimeoutConstants.TS_SELENIUM_LOAD_PAGE_TIMEOUT) {
|
|
84
|
+
async openWorkspace(namespace: string, workspaceName: string, timeout: number = TimeoutConstants.TS_SELENIUM_LOAD_PAGE_TIMEOUT): Promise<void> {
|
|
85
85
|
Logger.debug(`WorkspaceDetails.openWorkspace "${namespace}/${workspaceName}"`);
|
|
86
86
|
|
|
87
87
|
await this.clickOnOpenButton(timeout);
|
|
@@ -89,7 +89,7 @@ export class WorkspaceDetails {
|
|
|
89
89
|
await this.testWorkspaceUtil.waitWorkspaceStatus(namespace, workspaceName, WorkspaceStatus.STARTING);
|
|
90
90
|
}
|
|
91
91
|
|
|
92
|
-
async waitTabsPresence(timeout: number = TimeoutConstants.TS_COMMON_DASHBOARD_WAIT_TIMEOUT) {
|
|
92
|
+
async waitTabsPresence(timeout: number = TimeoutConstants.TS_COMMON_DASHBOARD_WAIT_TIMEOUT): Promise<void> {
|
|
93
93
|
Logger.debug('WorkspaceDetails.waitTabsPresence');
|
|
94
94
|
|
|
95
95
|
const workspaceDetailsTabs: Array<string> = ['Overview', 'Projects', 'Containers', 'Servers',
|
|
@@ -102,7 +102,7 @@ export class WorkspaceDetails {
|
|
|
102
102
|
}
|
|
103
103
|
}
|
|
104
104
|
|
|
105
|
-
async selectTab(tabTitle: string, timeout: number = TimeoutConstants.TS_COMMON_DASHBOARD_WAIT_TIMEOUT) {
|
|
105
|
+
async selectTab(tabTitle: string, timeout: number = TimeoutConstants.TS_COMMON_DASHBOARD_WAIT_TIMEOUT): Promise<void> {
|
|
106
106
|
Logger.debug(`WorkspaceDetails.selectTab ${tabTitle}`);
|
|
107
107
|
|
|
108
108
|
await this.clickOnTab(tabTitle, timeout);
|
|
@@ -121,30 +121,30 @@ export class WorkspaceDetails {
|
|
|
121
121
|
return `//md-tabs-canvas[@role='tablist']//md-tab-item[@aria-selected='true']//span[text()='${tabTitle}']`;
|
|
122
122
|
}
|
|
123
123
|
|
|
124
|
-
private async waitSaveButton(timeout: number = TimeoutConstants.TS_COMMON_DASHBOARD_WAIT_TIMEOUT) {
|
|
124
|
+
private async waitSaveButton(timeout: number = TimeoutConstants.TS_COMMON_DASHBOARD_WAIT_TIMEOUT): Promise<void> {
|
|
125
125
|
await this.driverHelper.waitVisibility(By.css(WorkspaceDetails.ENABLED_SAVE_BUTTON_CSS), timeout);
|
|
126
126
|
}
|
|
127
127
|
|
|
128
|
-
private async waitSaveButtonDisappearance(attempts: number = TestConstants.TS_SELENIUM_DEFAULT_ATTEMPTS, polling: number = TestConstants.TS_SELENIUM_DEFAULT_POLLING) {
|
|
128
|
+
private async waitSaveButtonDisappearance(attempts: number = TestConstants.TS_SELENIUM_DEFAULT_ATTEMPTS, polling: number = TestConstants.TS_SELENIUM_DEFAULT_POLLING): Promise<void> {
|
|
129
129
|
await this.driverHelper.waitDisappearance(By.css(WorkspaceDetails.SAVE_BUTTON_CSS), attempts, polling);
|
|
130
130
|
}
|
|
131
131
|
|
|
132
|
-
private async clickOnSaveButton(timeout: number = TimeoutConstants.TS_CLICK_DASHBOARD_ITEM_TIMEOUT) {
|
|
132
|
+
private async clickOnSaveButton(timeout: number = TimeoutConstants.TS_CLICK_DASHBOARD_ITEM_TIMEOUT): Promise<void> {
|
|
133
133
|
await this.driverHelper.waitAndClick(By.css(WorkspaceDetails.ENABLED_SAVE_BUTTON_CSS), timeout);
|
|
134
134
|
}
|
|
135
135
|
|
|
136
|
-
private async clickOnOpenButton(timeout: number = TimeoutConstants.TS_CLICK_DASHBOARD_ITEM_TIMEOUT) {
|
|
136
|
+
private async clickOnOpenButton(timeout: number = TimeoutConstants.TS_CLICK_DASHBOARD_ITEM_TIMEOUT): Promise<void> {
|
|
137
137
|
await this.driverHelper.waitAndClick(By.css(WorkspaceDetails.OPEN_BUTTON_CSS), timeout);
|
|
138
138
|
}
|
|
139
139
|
|
|
140
|
-
private async clickOnTab(tabTitle: string, timeout: number = TimeoutConstants.TS_CLICK_DASHBOARD_ITEM_TIMEOUT) {
|
|
140
|
+
private async clickOnTab(tabTitle: string, timeout: number = TimeoutConstants.TS_CLICK_DASHBOARD_ITEM_TIMEOUT): Promise<void> {
|
|
141
141
|
const workspaceDetailsTabLocator: By = By.xpath(this.getTabXpathLocator(tabTitle));
|
|
142
142
|
|
|
143
143
|
|
|
144
144
|
await this.driverHelper.waitAndClick(workspaceDetailsTabLocator, timeout);
|
|
145
145
|
}
|
|
146
146
|
|
|
147
|
-
private async waitTabSelected(tabTitle: string, timeout: number = TimeoutConstants.TS_COMMON_DASHBOARD_WAIT_TIMEOUT) {
|
|
147
|
+
private async waitTabSelected(tabTitle: string, timeout: number = TimeoutConstants.TS_COMMON_DASHBOARD_WAIT_TIMEOUT): Promise<void> {
|
|
148
148
|
const selectedTabLocator: By = By.xpath(this.getSelectedTabXpathLocator(tabTitle));
|
|
149
149
|
|
|
150
150
|
await this.driverHelper.waitVisibility(selectedTabLocator, timeout);
|
|
@@ -55,7 +55,7 @@ export class OauthPage {
|
|
|
55
55
|
}
|
|
56
56
|
}
|
|
57
57
|
|
|
58
|
-
async waitLoginPage() {
|
|
58
|
+
async waitLoginPage(): Promise<void> {
|
|
59
59
|
Logger.debug('OauthPage.waitLoginPage');
|
|
60
60
|
|
|
61
61
|
// for gitlab server https://gitlab.cee.redhat.com
|
|
@@ -70,55 +70,55 @@ export class OauthPage {
|
|
|
70
70
|
await this.driverHelper.waitVisibility(this.loginForm, TimeoutConstants.TS_SELENIUM_CLICK_ON_VISIBLE_ITEM * 3);
|
|
71
71
|
}
|
|
72
72
|
|
|
73
|
-
async enterUserName(userName: string) {
|
|
73
|
+
async enterUserName(userName: string): Promise<void> {
|
|
74
74
|
Logger.debug(`this.enterUserName "${userName}"`);
|
|
75
75
|
|
|
76
76
|
await this.driverHelper.enterValue(this.loginForm, userName);
|
|
77
77
|
}
|
|
78
78
|
|
|
79
|
-
async enterPassword(password: string) {
|
|
79
|
+
async enterPassword(password: string): Promise<void> {
|
|
80
80
|
Logger.debug(`OauthPage.enterPassword`);
|
|
81
81
|
|
|
82
82
|
await this.driverHelper.enterValue(this.passwordForm, password);
|
|
83
83
|
}
|
|
84
84
|
|
|
85
|
-
async clickOnLoginButton() {
|
|
85
|
+
async clickOnLoginButton(): Promise<void> {
|
|
86
86
|
Logger.debug('OauthPage.clickOnLoginButton');
|
|
87
87
|
|
|
88
88
|
await this.driverHelper.waitAndClick(this.submitButton);
|
|
89
89
|
}
|
|
90
90
|
|
|
91
|
-
async waitClosingLoginPage() {
|
|
91
|
+
async waitClosingLoginPage(): Promise<void> {
|
|
92
92
|
Logger.debug('OauthPage.waitClosingLoginPage');
|
|
93
93
|
|
|
94
94
|
await this.driverHelper.waitDisappearance(this.loginForm);
|
|
95
95
|
}
|
|
96
96
|
|
|
97
|
-
async waitOauthPage() {
|
|
97
|
+
async waitOauthPage(): Promise<void> {
|
|
98
98
|
Logger.debug('OauthPage.waitOauthPage');
|
|
99
99
|
|
|
100
100
|
await this.driverHelper.waitVisibility(this.approveButton);
|
|
101
101
|
}
|
|
102
102
|
|
|
103
|
-
async clickOnApproveButton() {
|
|
103
|
+
async clickOnApproveButton(): Promise<void> {
|
|
104
104
|
Logger.debug('OauthPage.clickOnApproveButton');
|
|
105
105
|
|
|
106
106
|
await this.driverHelper.waitAndClick(this.approveButton);
|
|
107
107
|
}
|
|
108
108
|
|
|
109
|
-
async clickOnDenyAccessButton() {
|
|
109
|
+
async clickOnDenyAccessButton(): Promise<void> {
|
|
110
110
|
Logger.debug('OauthPage.clickOnDenyAccessButton');
|
|
111
111
|
|
|
112
112
|
await this.driverHelper.waitAndClick(this.denyAccessButton);
|
|
113
113
|
}
|
|
114
114
|
|
|
115
|
-
async waitDisappearanceOauthPage() {
|
|
115
|
+
async waitDisappearanceOauthPage(): Promise<void> {
|
|
116
116
|
Logger.debug('OauthPage.waitDisappearanceOauthPage');
|
|
117
117
|
|
|
118
118
|
await this.driverHelper.waitDisappearance(this.approveButton);
|
|
119
119
|
}
|
|
120
120
|
|
|
121
|
-
async login() {
|
|
121
|
+
async login(): Promise<void> {
|
|
122
122
|
Logger.debug('OauthPage.login');
|
|
123
123
|
|
|
124
124
|
await this.waitLoginPage();
|
|
@@ -128,7 +128,7 @@ export class OauthPage {
|
|
|
128
128
|
await this.waitClosingLoginPage();
|
|
129
129
|
}
|
|
130
130
|
|
|
131
|
-
async confirmAccess() {
|
|
131
|
+
async confirmAccess(): Promise<void> {
|
|
132
132
|
Logger.debug('OauthPage.confirmAccess');
|
|
133
133
|
|
|
134
134
|
try {
|
|
@@ -147,7 +147,7 @@ export class OauthPage {
|
|
|
147
147
|
}
|
|
148
148
|
}
|
|
149
149
|
|
|
150
|
-
async denyAccess() {
|
|
150
|
+
async denyAccess(): Promise<void> {
|
|
151
151
|
Logger.debug('OauthPage.denyAccess');
|
|
152
152
|
|
|
153
153
|
await this.clickOnDenyAccessButton();
|
|
@@ -39,7 +39,7 @@ export class CheCodeLocatorLoader extends LocatorLoader {
|
|
|
39
39
|
};
|
|
40
40
|
}
|
|
41
41
|
|
|
42
|
-
private merge(target: any, obj: any) {
|
|
42
|
+
private merge(target: any, obj: any): object {
|
|
43
43
|
for (const key in obj) {
|
|
44
44
|
if (!Object.prototype.hasOwnProperty.call(obj, key)) {
|
|
45
45
|
continue;
|
|
@@ -21,7 +21,7 @@ export class OcpUserLoginPage implements IOcpLoginPage {
|
|
|
21
21
|
constructor(
|
|
22
22
|
@inject(CLASSES.OcpLoginPage) private readonly ocpLogin: OcpLoginPage) { }
|
|
23
23
|
|
|
24
|
-
async login() {
|
|
24
|
+
async login(): Promise<void> {
|
|
25
25
|
Logger.debug('OcpUserLoginPage.login');
|
|
26
26
|
|
|
27
27
|
if (TestConstants.TS_OCP_LOGIN_PAGE_PROVIDER_TITLE !== '') {
|
|
@@ -27,34 +27,34 @@ export class RedHatLoginPage {
|
|
|
27
27
|
constructor(
|
|
28
28
|
@inject(CLASSES.DriverHelper) private readonly driverHelper: DriverHelper) { }
|
|
29
29
|
|
|
30
|
-
async waitRedHatLoginWelcomePage() {
|
|
30
|
+
async waitRedHatLoginWelcomePage(): Promise<void> {
|
|
31
31
|
Logger.debug('RedHatLoginPage.waitRedHatLoginWelcomePage');
|
|
32
32
|
await this.driverHelper.waitVisibility(By.id(USERNAME_INPUT_ID));
|
|
33
33
|
}
|
|
34
34
|
|
|
35
|
-
async enterPasswordRedHat() {
|
|
35
|
+
async enterPasswordRedHat(): Promise<void> {
|
|
36
36
|
Logger.debug('RedHatLoginPage.enterPasswordRedHat');
|
|
37
37
|
const passwordFieldLocator: By = By.id(PASSWORD_INPUT_ID);
|
|
38
38
|
await this.driverHelper.waitVisibility(passwordFieldLocator, 3000);
|
|
39
39
|
await this.driverHelper.enterValue(passwordFieldLocator, TestConstants.TS_SELENIUM_PASSWORD, timeout );
|
|
40
40
|
}
|
|
41
|
-
async clickOnLoginButton() {
|
|
41
|
+
async clickOnLoginButton(): Promise<void> {
|
|
42
42
|
Logger.debug('RedHatLoginPage.clickOnLoginButton');
|
|
43
43
|
const loginButtonLocator: By = By.id(LOGIN_BUTTON_ID);
|
|
44
44
|
await this.driverHelper.waitAndClick(loginButtonLocator, timeout);
|
|
45
45
|
}
|
|
46
|
-
async waitDisappearanceRedHatLoginWelcomePage() {
|
|
46
|
+
async waitDisappearanceRedHatLoginWelcomePage(): Promise<void> {
|
|
47
47
|
Logger.debug('RedHatLoginPage.waitDisappearanceRedHatLoginWelcomePage');
|
|
48
48
|
await this.driverHelper.waitDisappearance(By.id(LOGIN_BUTTON_ID));
|
|
49
49
|
}
|
|
50
|
-
async enterUserNameRedHat() {
|
|
50
|
+
async enterUserNameRedHat(): Promise<void> {
|
|
51
51
|
Logger.debug('RedHatLoginPage.enterUserNameRedHat');
|
|
52
52
|
const usernameFieldLocator: By = By.id(USERNAME_INPUT_ID);
|
|
53
53
|
await this.driverHelper.waitVisibility(usernameFieldLocator, 20000);
|
|
54
54
|
await this.driverHelper.enterValue(usernameFieldLocator, TestConstants.TS_SELENIUM_USERNAME, timeout );
|
|
55
55
|
}
|
|
56
56
|
|
|
57
|
-
async clickNextButton() {
|
|
57
|
+
async clickNextButton(): Promise<void> {
|
|
58
58
|
Logger.debug('RedHatLoginPage.clickNextButton');
|
|
59
59
|
const nextButtonLocator: By = By.id(NEXT_BUTTON_ID);
|
|
60
60
|
await this.driverHelper.waitAndClick(nextButtonLocator, timeout);
|