@eclipse-che/che-e2e 7.50.1-dev-073b203 → 7.50.1-dev-df0db72
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/package.json +1 -1
- package/tests/load_test/LoadTest.spec.ts +9 -4
- package/testsLibrary/WorkspaceHandlingTests.ts +22 -7
- package/dist/TestConstants.js +0 -220
- package/dist/TestConstants.js.map +0 -1
- package/dist/TimeoutConstants.js +0 -184
- package/dist/TimeoutConstants.js.map +0 -1
- package/dist/driver/CheReporter.js +0 -181
- package/dist/driver/CheReporter.js.map +0 -1
- package/dist/driver/ChromeDriver.js +0 -75
- package/dist/driver/ChromeDriver.js.map +0 -1
- package/dist/driver/IDriver.js +0 -3
- package/dist/driver/IDriver.js.map +0 -1
- package/dist/index.js +0 -93
- package/dist/index.js.map +0 -1
- package/dist/inversify.config.js +0 -130
- package/dist/inversify.config.js.map +0 -1
- package/dist/inversify.types.js +0 -74
- package/dist/inversify.types.js.map +0 -1
- package/dist/pageobjects/dashboard/CreateWorkspace.js +0 -65
- package/dist/pageobjects/dashboard/CreateWorkspace.js.map +0 -1
- package/dist/pageobjects/dashboard/Dashboard.js +0 -115
- package/dist/pageobjects/dashboard/Dashboard.js.map +0 -1
- package/dist/pageobjects/dashboard/Workspaces.js +0 -157
- package/dist/pageobjects/dashboard/Workspaces.js.map +0 -1
- package/dist/pageobjects/dashboard/workspace-details/WorkspaceDetails.js +0 -138
- package/dist/pageobjects/dashboard/workspace-details/WorkspaceDetails.js.map +0 -1
- package/dist/pageobjects/dashboard/workspace-details/WorkspaceDetailsPlugins.js +0 -97
- package/dist/pageobjects/dashboard/workspace-details/WorkspaceDetailsPlugins.js.map +0 -1
- package/dist/pageobjects/ide/ContextMenu.js +0 -66
- package/dist/pageobjects/ide/ContextMenu.js.map +0 -1
- package/dist/pageobjects/ide/DebugView.js +0 -98
- package/dist/pageobjects/ide/DebugView.js.map +0 -1
- package/dist/pageobjects/ide/DialogWindow.js +0 -102
- package/dist/pageobjects/ide/DialogWindow.js.map +0 -1
- package/dist/pageobjects/ide/Editor.js +0 -464
- package/dist/pageobjects/ide/Editor.js.map +0 -1
- package/dist/pageobjects/ide/Ide.js +0 -336
- package/dist/pageobjects/ide/Ide.js.map +0 -1
- package/dist/pageobjects/ide/LeftToolBar.js +0 -81
- package/dist/pageobjects/ide/LeftToolBar.js.map +0 -1
- package/dist/pageobjects/ide/NavigationBar.js +0 -57
- package/dist/pageobjects/ide/NavigationBar.js.map +0 -1
- package/dist/pageobjects/ide/NotificationCenter.js +0 -76
- package/dist/pageobjects/ide/NotificationCenter.js.map +0 -1
- package/dist/pageobjects/ide/OpenDialogWidget.js +0 -100
- package/dist/pageobjects/ide/OpenDialogWidget.js.map +0 -1
- package/dist/pageobjects/ide/OpenEditors.js +0 -73
- package/dist/pageobjects/ide/OpenEditors.js.map +0 -1
- package/dist/pageobjects/ide/OpenWorkspaceWidget.js +0 -62
- package/dist/pageobjects/ide/OpenWorkspaceWidget.js.map +0 -1
- package/dist/pageobjects/ide/PreviewWidget.js +0 -134
- package/dist/pageobjects/ide/PreviewWidget.js.map +0 -1
- package/dist/pageobjects/ide/ProjectTree.js +0 -282
- package/dist/pageobjects/ide/ProjectTree.js.map +0 -1
- package/dist/pageobjects/ide/QuickOpenContainer.js +0 -70
- package/dist/pageobjects/ide/QuickOpenContainer.js.map +0 -1
- package/dist/pageobjects/ide/RightToolBar.js +0 -51
- package/dist/pageobjects/ide/RightToolBar.js.map +0 -1
- package/dist/pageobjects/ide/Terminal.js +0 -184
- package/dist/pageobjects/ide/Terminal.js.map +0 -1
- package/dist/pageobjects/ide/TopMenu.js +0 -109
- package/dist/pageobjects/ide/TopMenu.js.map +0 -1
- package/dist/pageobjects/ide/plugins/GitHubPullRequestPlugin.js +0 -128
- package/dist/pageobjects/ide/plugins/GitHubPullRequestPlugin.js.map +0 -1
- package/dist/pageobjects/ide/plugins/GitPlugin.js +0 -120
- package/dist/pageobjects/ide/plugins/GitPlugin.js.map +0 -1
- package/dist/pageobjects/ide/plugins/KubernetesPlugin.js +0 -107
- package/dist/pageobjects/ide/plugins/KubernetesPlugin.js.map +0 -1
- package/dist/pageobjects/ide/plugins/OpenshiftPlugin.js +0 -99
- package/dist/pageobjects/ide/plugins/OpenshiftPlugin.js.map +0 -1
- package/dist/pageobjects/ide/plugins/PluginsView.js +0 -166
- package/dist/pageobjects/ide/plugins/PluginsView.js.map +0 -1
- package/dist/pageobjects/login/ICheLoginPage.js +0 -12
- package/dist/pageobjects/login/ICheLoginPage.js.map +0 -1
- package/dist/pageobjects/login/IOcpLoginPage.js +0 -12
- package/dist/pageobjects/login/IOcpLoginPage.js.map +0 -1
- package/dist/pageobjects/login/MultiUserLoginPage.js +0 -49
- package/dist/pageobjects/login/MultiUserLoginPage.js.map +0 -1
- package/dist/pageobjects/login/OcpUserLoginPage.js +0 -53
- package/dist/pageobjects/login/OcpUserLoginPage.js.map +0 -1
- package/dist/pageobjects/login/RegularUserOcpCheLoginPage.js +0 -86
- package/dist/pageobjects/login/RegularUserOcpCheLoginPage.js.map +0 -1
- package/dist/pageobjects/login/UpdateAccountInformationPage.js +0 -74
- package/dist/pageobjects/login/UpdateAccountInformationPage.js.map +0 -1
- package/dist/pageobjects/openshift/CheLoginPage.js +0 -88
- package/dist/pageobjects/openshift/CheLoginPage.js.map +0 -1
- package/dist/pageobjects/openshift/OcpLoginPage.js +0 -106
- package/dist/pageobjects/openshift/OcpLoginPage.js.map +0 -1
- package/dist/pageobjects/third-parties/GitLoginPage.js +0 -85
- package/dist/pageobjects/third-parties/GitLoginPage.js.map +0 -1
- package/dist/pageobjects/third-parties/GitOauthAppsSettings.js +0 -110
- package/dist/pageobjects/third-parties/GitOauthAppsSettings.js.map +0 -1
- package/dist/tests/devfiles/CSlashCPlusPlus.spec.js +0 -73
- package/dist/tests/devfiles/CSlashCPlusPlus.spec.js.map +0 -1
- package/dist/tests/devfiles/DevfileSmoke.spec.js +0 -47
- package/dist/tests/devfiles/DevfileSmoke.spec.js.map +0 -1
- package/dist/tests/devfiles/DotNetCore.spec.js +0 -81
- package/dist/tests/devfiles/DotNetCore.spec.js.map +0 -1
- package/dist/tests/devfiles/Go.spec.js +0 -72
- package/dist/tests/devfiles/Go.spec.js.map +0 -1
- package/dist/tests/devfiles/JavaMaven.spec.js +0 -60
- package/dist/tests/devfiles/JavaMaven.spec.js.map +0 -1
- package/dist/tests/devfiles/JavaSpringBoot.spec.js +0 -66
- package/dist/tests/devfiles/JavaSpringBoot.spec.js.map +0 -1
- package/dist/tests/devfiles/JavaVertx.spec.js +0 -60
- package/dist/tests/devfiles/JavaVertx.spec.js.map +0 -1
- package/dist/tests/devfiles/NodeJS.spec.js +0 -64
- package/dist/tests/devfiles/NodeJS.spec.js.map +0 -1
- package/dist/tests/devfiles/PHPSimple.spec.js +0 -74
- package/dist/tests/devfiles/PHPSimple.spec.js.map +0 -1
- package/dist/tests/devfiles/Python.spec.js +0 -58
- package/dist/tests/devfiles/Python.spec.js.map +0 -1
- package/dist/tests/devfiles/PythonDjango.spec.js +0 -61
- package/dist/tests/devfiles/PythonDjango.spec.js.map +0 -1
- package/dist/tests/devfiles/Quarkus.spec.js +0 -69
- package/dist/tests/devfiles/Quarkus.spec.js.map +0 -1
- package/dist/tests/devfiles/Scala.spec.js +0 -66
- package/dist/tests/devfiles/Scala.spec.js.map +0 -1
- package/dist/tests/e2e/FactoryUrl.spec.js +0 -40
- package/dist/tests/e2e/FactoryUrl.spec.js.map +0 -1
- package/dist/tests/e2e/GitPublishBranch.spec.js +0 -90
- package/dist/tests/e2e/GitPublishBranch.spec.js.map +0 -1
- package/dist/tests/e2e/GitSelfSignCert.spec.js +0 -90
- package/dist/tests/e2e/GitSelfSignCert.spec.js.map +0 -1
- package/dist/tests/e2e/GitSsh.spec.js +0 -120
- package/dist/tests/e2e/GitSsh.spec.js.map +0 -1
- package/dist/tests/e2e/OpenshiftConnector.spec.js +0 -124
- package/dist/tests/e2e/OpenshiftConnector.spec.js.map +0 -1
- package/dist/tests/e2e/factories/DirectUrlFactoryWithKeepDirectoryTest.spec.js +0 -50
- package/dist/tests/e2e/factories/DirectUrlFactoryWithKeepDirectoryTest.spec.js.map +0 -1
- package/dist/tests/e2e/factories/DirectUrlFactoryWithRootFolderTest.spec.js +0 -48
- package/dist/tests/e2e/factories/DirectUrlFactoryWithRootFolderTest.spec.js.map +0 -1
- package/dist/tests/e2e/factories/DirectUrlFactoryWithSpecificBranchTest.spec.js +0 -48
- package/dist/tests/e2e/factories/DirectUrlFactoryWithSpecificBranchTest.spec.js.map +0 -1
- package/dist/tests/e2e_happy_path/DevWorkspaceHappyPath.spec.js +0 -278
- package/dist/tests/e2e_happy_path/DevWorkspaceHappyPath.spec.js.map +0 -1
- package/dist/tests/e2e_happy_path/HappyPath.spec.js +0 -314
- package/dist/tests/e2e_happy_path/HappyPath.spec.js.map +0 -1
- package/dist/tests/intelij/IntelijOpenWorkspace.spec.js +0 -39
- package/dist/tests/intelij/IntelijOpenWorkspace.spec.js.map +0 -1
- package/dist/tests/load_test/LoadTest.spec.js +0 -37
- package/dist/tests/load_test/LoadTest.spec.js.map +0 -1
- package/dist/tests/login/LinkCheAndOcpUsers.spec.js +0 -39
- package/dist/tests/login/LinkCheAndOcpUsers.spec.js.map +0 -1
- package/dist/tests/login/Login.spec.js +0 -28
- package/dist/tests/login/Login.spec.js.map +0 -1
- package/dist/tests/plugins/GitHubPullRequestPlugin.spec.js +0 -118
- package/dist/tests/plugins/GitHubPullRequestPlugin.spec.js.map +0 -1
- package/dist/tests/plugins/InstallPluginUsingUI.spec.js +0 -63
- package/dist/tests/plugins/InstallPluginUsingUI.spec.js.map +0 -1
- package/dist/tests/plugins/JavaPlugin.spec.js +0 -82
- package/dist/tests/plugins/JavaPlugin.spec.js.map +0 -1
- package/dist/tests/plugins/PhpPlugin.spec.js +0 -96
- package/dist/tests/plugins/PhpPlugin.spec.js.map +0 -1
- package/dist/tests/plugins/PythonPlugin.spec.js +0 -72
- package/dist/tests/plugins/PythonPlugin.spec.js.map +0 -1
- package/dist/tests/plugins/TypescriptPlugin.spec.js +0 -135
- package/dist/tests/plugins/TypescriptPlugin.spec.js.map +0 -1
- package/dist/tests/plugins/VscodeKubernetesPlugin.spec.js +0 -69
- package/dist/tests/plugins/VscodeKubernetesPlugin.spec.js.map +0 -1
- package/dist/tests/plugins/VscodeShellcheckPlugin.spec.js +0 -82
- package/dist/tests/plugins/VscodeShellcheckPlugin.spec.js.map +0 -1
- package/dist/tests/plugins/VscodeValePlugin.spec.js +0 -70
- package/dist/tests/plugins/VscodeValePlugin.spec.js.map +0 -1
- package/dist/tests/plugins/VscodeXmlPlugin.spec.js +0 -81
- package/dist/tests/plugins/VscodeXmlPlugin.spec.js.map +0 -1
- package/dist/tests/plugins/VscodeYamlPlugin.spec.js +0 -78
- package/dist/tests/plugins/VscodeYamlPlugin.spec.js.map +0 -1
- package/dist/testsLibrary/CodeExecutionTests.js +0 -248
- package/dist/testsLibrary/CodeExecutionTests.js.map +0 -1
- package/dist/testsLibrary/LanguageServerTests.js +0 -230
- package/dist/testsLibrary/LanguageServerTests.js.map +0 -1
- package/dist/testsLibrary/ProjectAndFileTests.js +0 -105
- package/dist/testsLibrary/ProjectAndFileTests.js.map +0 -1
- package/dist/testsLibrary/WorkspaceHandlingTests.js +0 -156
- package/dist/testsLibrary/WorkspaceHandlingTests.js.map +0 -1
- package/dist/utils/AnimationChecker.js +0 -45
- package/dist/utils/AnimationChecker.js.map +0 -1
- package/dist/utils/BrowserTabsUtil.js +0 -115
- package/dist/utils/BrowserTabsUtil.js.map +0 -1
- package/dist/utils/DriverHelper.js +0 -616
- package/dist/utils/DriverHelper.js.map +0 -1
- package/dist/utils/Logger.js +0 -84
- package/dist/utils/Logger.js.map +0 -1
- package/dist/utils/PreferencesHandler.js +0 -142
- package/dist/utils/PreferencesHandler.js.map +0 -1
- package/dist/utils/Sanitizer.js +0 -29
- package/dist/utils/Sanitizer.js.map +0 -1
- package/dist/utils/ScreenCatcher.js +0 -107
- package/dist/utils/ScreenCatcher.js.map +0 -1
- package/dist/utils/VCS/CheGitApi.js +0 -42
- package/dist/utils/VCS/CheGitApi.js.map +0 -1
- package/dist/utils/VCS/github/GitHubUtil.js +0 -126
- package/dist/utils/VCS/github/GitHubUtil.js.map +0 -1
- package/dist/utils/WorkspaceNameHandler.js +0 -60
- package/dist/utils/WorkspaceNameHandler.js.map +0 -1
- package/dist/utils/requestHandlers/CheApiRequestHandler.js +0 -126
- package/dist/utils/requestHandlers/CheApiRequestHandler.js.map +0 -1
- package/dist/utils/requestHandlers/headers/CheMultiuserAuthorizationHeaderHandler.js +0 -49
- package/dist/utils/requestHandlers/headers/CheMultiuserAuthorizationHeaderHandler.js.map +0 -1
- package/dist/utils/requestHandlers/headers/IAuthorizationHeaderHandler.js +0 -12
- package/dist/utils/requestHandlers/headers/IAuthorizationHeaderHandler.js.map +0 -1
- package/dist/utils/requestHandlers/tokens/CheMultiuserTokenHandler.js +0 -50
- package/dist/utils/requestHandlers/tokens/CheMultiuserTokenHandler.js.map +0 -1
- package/dist/utils/requestHandlers/tokens/ITokenHandler.js +0 -12
- package/dist/utils/requestHandlers/tokens/ITokenHandler.js.map +0 -1
- package/dist/utils/workspace/ApiUrlResolver.js +0 -67
- package/dist/utils/workspace/ApiUrlResolver.js.map +0 -1
- package/dist/utils/workspace/ITestWorkspaceUtil.js +0 -12
- package/dist/utils/workspace/ITestWorkspaceUtil.js.map +0 -1
- package/dist/utils/workspace/TestWorkspaceUtil.js +0 -357
- package/dist/utils/workspace/TestWorkspaceUtil.js.map +0 -1
- package/dist/utils/workspace/WorkspaceStatus.js +0 -19
- package/dist/utils/workspace/WorkspaceStatus.js.map +0 -1
|
@@ -1,66 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
/*********************************************************************
|
|
3
|
-
* Copyright (c) 2019 Red Hat, Inc.
|
|
4
|
-
*
|
|
5
|
-
* This program and the accompanying materials are made
|
|
6
|
-
* available under the terms of the Eclipse Public License 2.0
|
|
7
|
-
* which is available at https://www.eclipse.org/legal/epl-2.0/
|
|
8
|
-
*
|
|
9
|
-
* SPDX-License-Identifier: EPL-2.0
|
|
10
|
-
**********************************************************************/
|
|
11
|
-
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
12
|
-
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
13
|
-
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
14
|
-
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
15
|
-
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
16
|
-
};
|
|
17
|
-
var __metadata = (this && this.__metadata) || function (k, v) {
|
|
18
|
-
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
|
19
|
-
};
|
|
20
|
-
var __param = (this && this.__param) || function (paramIndex, decorator) {
|
|
21
|
-
return function (target, key) { decorator(target, key, paramIndex); }
|
|
22
|
-
};
|
|
23
|
-
var ContextMenu_1;
|
|
24
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
25
|
-
exports.ContextMenu = void 0;
|
|
26
|
-
require("reflect-metadata");
|
|
27
|
-
const inversify_1 = require("inversify");
|
|
28
|
-
const DriverHelper_1 = require("../../utils/DriverHelper");
|
|
29
|
-
const inversify_types_1 = require("../../inversify.types");
|
|
30
|
-
const selenium_webdriver_1 = require("selenium-webdriver");
|
|
31
|
-
const Logger_1 = require("../../utils/Logger");
|
|
32
|
-
const TimeoutConstants_1 = require("../../TimeoutConstants");
|
|
33
|
-
let ContextMenu = ContextMenu_1 = class ContextMenu {
|
|
34
|
-
constructor(driverHelper) {
|
|
35
|
-
this.driverHelper = driverHelper;
|
|
36
|
-
}
|
|
37
|
-
async invokeContextMenuOnTheElementWithMouse(elementLocator) {
|
|
38
|
-
Logger_1.Logger.debug(`ContextMenu.invokeContextMenuOnTheElementWithMouse ${elementLocator}`);
|
|
39
|
-
const webElement = await this.driverHelper.waitVisibility(elementLocator, TimeoutConstants_1.TimeoutConstants.TS_CONTEXT_MENU_TIMEOUT);
|
|
40
|
-
await this.driverHelper.getAction().click(webElement, selenium_webdriver_1.Button.RIGHT).perform();
|
|
41
|
-
this.waitContextMenu();
|
|
42
|
-
}
|
|
43
|
-
async invokeContextMenuOnActiveElementWithKeys() {
|
|
44
|
-
Logger_1.Logger.debug('ContextMenu.invokeContextMenuOnActiveElementWithKeys');
|
|
45
|
-
this.driverHelper.getDriver().switchTo().activeElement().sendKeys(selenium_webdriver_1.Key.SHIFT + selenium_webdriver_1.Key.F10);
|
|
46
|
-
this.waitContextMenu();
|
|
47
|
-
}
|
|
48
|
-
async waitContextMenuAndClickOnItem(nameOfItem) {
|
|
49
|
-
Logger_1.Logger.debug(`ContextMenu.waitContextMenuAndClickOnItem "${nameOfItem}"`);
|
|
50
|
-
const itemLocator = `//div[@class='p-Menu-itemLabel' and text()='${nameOfItem}']`;
|
|
51
|
-
await this.waitContextMenu();
|
|
52
|
-
await this.driverHelper.waitAndClick(selenium_webdriver_1.By.xpath(itemLocator), TimeoutConstants_1.TimeoutConstants.TS_CONTEXT_MENU_TIMEOUT);
|
|
53
|
-
}
|
|
54
|
-
async waitContextMenu() {
|
|
55
|
-
Logger_1.Logger.debug(`ContextMenu.waitContextMenu`);
|
|
56
|
-
await this.driverHelper.waitVisibility(selenium_webdriver_1.By.css(ContextMenu_1.SUGGESTION_WIDGET_BODY_CSS), TimeoutConstants_1.TimeoutConstants.TS_CONTEXT_MENU_TIMEOUT);
|
|
57
|
-
}
|
|
58
|
-
};
|
|
59
|
-
ContextMenu.SUGGESTION_WIDGET_BODY_CSS = 'ul.p-Menu-content';
|
|
60
|
-
ContextMenu = ContextMenu_1 = __decorate([
|
|
61
|
-
inversify_1.injectable(),
|
|
62
|
-
__param(0, inversify_1.inject(inversify_types_1.CLASSES.DriverHelper)),
|
|
63
|
-
__metadata("design:paramtypes", [DriverHelper_1.DriverHelper])
|
|
64
|
-
], ContextMenu);
|
|
65
|
-
exports.ContextMenu = ContextMenu;
|
|
66
|
-
//# sourceMappingURL=ContextMenu.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"ContextMenu.js","sourceRoot":"","sources":["../../../pageobjects/ide/ContextMenu.ts"],"names":[],"mappings":";AAAA;;;;;;;;wEAQwE;;;;;;;;;;;;;;;;AAExE,4BAA0B;AAC1B,yCAA+C;AAC/C,2DAAwD;AACxD,2DAAgD;AAChD,2DAAiE;AACjE,+CAA4C;AAC5C,6DAA0D;AAG1D,IAAa,WAAW,mBAAxB,MAAa,WAAW;IAGnB,YAA2D,YAA0B;QAA1B,iBAAY,GAAZ,YAAY,CAAc;IAAI,CAAC;IAG1F,KAAK,CAAC,sCAAsC,CAAC,cAAkB;QAC1D,eAAM,CAAC,KAAK,CAAC,sDAAsD,cAAc,EAAE,CAAC,CAAC;QAErF,MAAM,UAAU,GAAe,MAAM,IAAI,CAAC,YAAY,CAAC,cAAc,CAAC,cAAc,EAAE,mCAAgB,CAAC,uBAAuB,CAAC,CAAC;QAChI,MAAM,IAAI,CAAC,YAAY,CAAC,SAAS,EAAE,CAAC,KAAK,CAAC,UAAU,EAAE,2BAAM,CAAC,KAAK,CAAC,CAAC,OAAO,EAAE,CAAC;QAC9E,IAAI,CAAC,eAAe,EAAE,CAAC;IAC5B,CAAC;IAED,KAAK,CAAC,wCAAwC;QACzC,eAAM,CAAC,KAAK,CAAC,sDAAsD,CAAC,CAAC;QAErE,IAAI,CAAC,YAAY,CAAC,SAAS,EAAE,CAAC,QAAQ,EAAE,CAAC,aAAa,EAAE,CAAC,QAAQ,CAAC,wBAAG,CAAC,KAAK,GAAG,wBAAG,CAAC,GAAG,CAAC,CAAC;QACvF,IAAI,CAAC,eAAe,EAAE,CAAC;IAC5B,CAAC;IAED,KAAK,CAAC,6BAA6B,CAAC,UAAkB;QACjD,eAAM,CAAC,KAAK,CAAC,8CAA8C,UAAU,GAAG,CAAC,CAAC;QAE1E,MAAM,WAAW,GAAW,+CAA+C,UAAU,IAAI,CAAC;QAC1F,MAAM,IAAI,CAAC,eAAe,EAAE,CAAC;QAC7B,MAAM,IAAI,CAAC,YAAY,CAAC,YAAY,CAAC,uBAAE,CAAC,KAAK,CAAC,WAAW,CAAC,EAAE,mCAAgB,CAAC,uBAAuB,CAAC,CAAC;IAC3G,CAAC;IAED,KAAK,CAAC,eAAe;QAChB,eAAM,CAAC,KAAK,CAAC,6BAA6B,CAAC,CAAC;QAE5C,MAAM,IAAI,CAAC,YAAY,CAAC,cAAc,CAAC,uBAAE,CAAC,GAAG,CAAC,aAAW,CAAC,0BAA0B,CAAC,EAAE,mCAAgB,CAAC,uBAAuB,CAAC,CAAC;IACtI,CAAC;CAEL,CAAA;AAlC4B,sCAA0B,GAAW,mBAAmB,CAAC;AADzE,WAAW;IADvB,sBAAU,EAAE;IAIK,WAAA,kBAAM,CAAC,yBAAO,CAAC,YAAY,CAAC,CAAA;qCAAgC,2BAAY;GAH7E,WAAW,CAmCvB;AAnCY,kCAAW"}
|
|
@@ -1,98 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
/*********************************************************************
|
|
3
|
-
* Copyright (c) 2019 Red Hat, Inc.
|
|
4
|
-
*
|
|
5
|
-
* This program and the accompanying materials are made
|
|
6
|
-
* available under the terms of the Eclipse Public License 2.0
|
|
7
|
-
* which is available at https://www.eclipse.org/legal/epl-2.0/
|
|
8
|
-
*
|
|
9
|
-
* SPDX-License-Identifier: EPL-2.0
|
|
10
|
-
**********************************************************************/
|
|
11
|
-
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
12
|
-
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
13
|
-
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
14
|
-
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
15
|
-
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
16
|
-
};
|
|
17
|
-
var __metadata = (this && this.__metadata) || function (k, v) {
|
|
18
|
-
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
|
19
|
-
};
|
|
20
|
-
var __param = (this && this.__param) || function (paramIndex, decorator) {
|
|
21
|
-
return function (target, key) { decorator(target, key, paramIndex); }
|
|
22
|
-
};
|
|
23
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
24
|
-
exports.DebugView = void 0;
|
|
25
|
-
const inversify_1 = require("inversify");
|
|
26
|
-
const inversify_types_1 = require("../../inversify.types");
|
|
27
|
-
const TestConstants_1 = require("../../TestConstants");
|
|
28
|
-
const DriverHelper_1 = require("../../utils/DriverHelper");
|
|
29
|
-
const selenium_webdriver_1 = require("selenium-webdriver");
|
|
30
|
-
const Ide_1 = require("./Ide");
|
|
31
|
-
const Logger_1 = require("../../utils/Logger");
|
|
32
|
-
const TimeoutConstants_1 = require("../../TimeoutConstants");
|
|
33
|
-
const AnimationChecker_1 = require("../../utils/AnimationChecker");
|
|
34
|
-
let DebugView = class DebugView {
|
|
35
|
-
constructor(driverHelper, ide, animationChecker) {
|
|
36
|
-
this.driverHelper = driverHelper;
|
|
37
|
-
this.ide = ide;
|
|
38
|
-
this.animationChecker = animationChecker;
|
|
39
|
-
}
|
|
40
|
-
async clickOnDebugConfigurationDropDown() {
|
|
41
|
-
Logger_1.Logger.debug('DebugView.clickOnDebugConfigurationDropDown');
|
|
42
|
-
await this.driverHelper.waitAndClick(selenium_webdriver_1.By.css('select.debug-configuration'));
|
|
43
|
-
}
|
|
44
|
-
async clickOnDebugConfigurationItem(itemText, timeout = TimeoutConstants_1.TimeoutConstants.TS_DEBUGGER_CONFIGURATION_VISIBILITY_TIMEOUT) {
|
|
45
|
-
Logger_1.Logger.debug(`DebugView.clickOnDebugConfigurationItem "${itemText}"`);
|
|
46
|
-
const configurationItemLocator = selenium_webdriver_1.By.xpath(`//select[contains(@class,'debug-configuration')]//option[text()=\'${itemText}\']`);
|
|
47
|
-
await this.animationChecker.waitDropDownAnimationEnd();
|
|
48
|
-
await this.driverHelper.waitAndClick(configurationItemLocator, timeout);
|
|
49
|
-
await this.ide.performKeyCombination(selenium_webdriver_1.Key.ESCAPE);
|
|
50
|
-
}
|
|
51
|
-
async clickOnRunDebugButton() {
|
|
52
|
-
Logger_1.Logger.debug('DebugView.clickOnRunDebugButton');
|
|
53
|
-
const runDebugButtonLocator = selenium_webdriver_1.By.xpath('//span[@title=\'Start Debugging\']');
|
|
54
|
-
await this.driverHelper.waitAndClick(runDebugButtonLocator, TimeoutConstants_1.TimeoutConstants.TS_DIALOG_WINDOW_DEFAULT_TIMEOUT);
|
|
55
|
-
}
|
|
56
|
-
/**
|
|
57
|
-
* Waits for number of threads in "Threads" view to be more than 1 - this should mean that the debugger is connected.
|
|
58
|
-
*
|
|
59
|
-
* @param timeout
|
|
60
|
-
*/
|
|
61
|
-
async waitForDebuggerToConnect(timeout = TimeoutConstants_1.TimeoutConstants.TS_DEBUGGER_CONNECTION_TIMEOUT) {
|
|
62
|
-
await this.driverHelper.getDriver().wait(async () => {
|
|
63
|
-
Logger_1.Logger.debug(`Waiting for debugger to connect (threads to appear in "Threads" view)`);
|
|
64
|
-
const threadsTreeLocator = `//div[contains(@class, 'theia-debug-thread')]`;
|
|
65
|
-
try {
|
|
66
|
-
const threadElements = await this.driverHelper.waitAllPresence(selenium_webdriver_1.By.xpath(threadsTreeLocator));
|
|
67
|
-
if (threadElements.length > 1) {
|
|
68
|
-
return true;
|
|
69
|
-
}
|
|
70
|
-
}
|
|
71
|
-
catch (err) {
|
|
72
|
-
if (!(err instanceof selenium_webdriver_1.error.TimeoutError)) {
|
|
73
|
-
throw err;
|
|
74
|
-
}
|
|
75
|
-
return await this.driverHelper.wait(TestConstants_1.TestConstants.TS_SELENIUM_DEFAULT_POLLING);
|
|
76
|
-
}
|
|
77
|
-
}, timeout);
|
|
78
|
-
}
|
|
79
|
-
/**
|
|
80
|
-
* Click on "Threads" view title.
|
|
81
|
-
*/
|
|
82
|
-
async clickOnThreadsViewTitle() {
|
|
83
|
-
Logger_1.Logger.debug(`Click on "Threads" view title`);
|
|
84
|
-
const threadsViewTitleLocator = selenium_webdriver_1.By.xpath('//div[@id="debug:view-container:-1--debug:threads:-1"]/*/span[@title="Threads"]');
|
|
85
|
-
await this.driverHelper.waitAndClick(threadsViewTitleLocator);
|
|
86
|
-
}
|
|
87
|
-
};
|
|
88
|
-
DebugView = __decorate([
|
|
89
|
-
inversify_1.injectable(),
|
|
90
|
-
__param(0, inversify_1.inject(inversify_types_1.CLASSES.DriverHelper)),
|
|
91
|
-
__param(1, inversify_1.inject(inversify_types_1.CLASSES.Ide)),
|
|
92
|
-
__param(2, inversify_1.inject(inversify_types_1.CLASSES.AnimationChecker)),
|
|
93
|
-
__metadata("design:paramtypes", [DriverHelper_1.DriverHelper,
|
|
94
|
-
Ide_1.Ide,
|
|
95
|
-
AnimationChecker_1.AnimationChecker])
|
|
96
|
-
], DebugView);
|
|
97
|
-
exports.DebugView = DebugView;
|
|
98
|
-
//# sourceMappingURL=DebugView.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"DebugView.js","sourceRoot":"","sources":["../../../pageobjects/ide/DebugView.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,102 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
/*********************************************************************
|
|
3
|
-
* Copyright (c) 2019 Red Hat, Inc.
|
|
4
|
-
*
|
|
5
|
-
* This program and the accompanying materials are made
|
|
6
|
-
* available under the terms of the Eclipse Public License 2.0
|
|
7
|
-
* which is available at https://www.eclipse.org/legal/epl-2.0/
|
|
8
|
-
*
|
|
9
|
-
* SPDX-License-Identifier: EPL-2.0
|
|
10
|
-
**********************************************************************/
|
|
11
|
-
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
12
|
-
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
13
|
-
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
14
|
-
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
15
|
-
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
16
|
-
};
|
|
17
|
-
var __metadata = (this && this.__metadata) || function (k, v) {
|
|
18
|
-
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
|
19
|
-
};
|
|
20
|
-
var __param = (this && this.__param) || function (paramIndex, decorator) {
|
|
21
|
-
return function (target, key) { decorator(target, key, paramIndex); }
|
|
22
|
-
};
|
|
23
|
-
var DialogWindow_1;
|
|
24
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
25
|
-
exports.DialogWindow = void 0;
|
|
26
|
-
const inversify_1 = require("inversify");
|
|
27
|
-
const inversify_types_1 = require("../../inversify.types");
|
|
28
|
-
const DriverHelper_1 = require("../../utils/DriverHelper");
|
|
29
|
-
const selenium_webdriver_1 = require("selenium-webdriver");
|
|
30
|
-
const Logger_1 = require("../../utils/Logger");
|
|
31
|
-
const Ide_1 = require("./Ide");
|
|
32
|
-
const TimeoutConstants_1 = require("../../TimeoutConstants");
|
|
33
|
-
let DialogWindow = DialogWindow_1 = class DialogWindow {
|
|
34
|
-
constructor(driverHelper, ide) {
|
|
35
|
-
this.driverHelper = driverHelper;
|
|
36
|
-
this.ide = ide;
|
|
37
|
-
}
|
|
38
|
-
async dialogDisplayes() {
|
|
39
|
-
Logger_1.Logger.debug('DialogWindow.dialogDisplayes');
|
|
40
|
-
return await this.driverHelper.isVisible(selenium_webdriver_1.By.xpath(DialogWindow_1.DIALOG_BODY_XPATH_LOCATOR));
|
|
41
|
-
}
|
|
42
|
-
async waitAndCloseIfAppear() {
|
|
43
|
-
Logger_1.Logger.debug('DialogWindow.waitAndCloseIfAppear');
|
|
44
|
-
const dialogDisplayes = await this.driverHelper.waitVisibilityBoolean(selenium_webdriver_1.By.xpath(DialogWindow_1.DIALOG_BODY_XPATH_LOCATOR));
|
|
45
|
-
if (dialogDisplayes) {
|
|
46
|
-
await this.closeDialog();
|
|
47
|
-
await this.waitDialogDissappearance();
|
|
48
|
-
}
|
|
49
|
-
}
|
|
50
|
-
async clickToButton(buttonText) {
|
|
51
|
-
Logger_1.Logger.debug('DialogWindow.clickToButton');
|
|
52
|
-
const buttonLocator = selenium_webdriver_1.By.xpath(`${DialogWindow_1.DIALOG_BODY_XPATH_LOCATOR}//button[text()='${buttonText}']`);
|
|
53
|
-
await this.driverHelper.waitAndClick(buttonLocator, TimeoutConstants_1.TimeoutConstants.TS_DIALOG_WINDOW_DEFAULT_TIMEOUT);
|
|
54
|
-
}
|
|
55
|
-
async closeDialog() {
|
|
56
|
-
Logger_1.Logger.debug('DialogWindow.closeDialog');
|
|
57
|
-
await this.clickToButton('close');
|
|
58
|
-
}
|
|
59
|
-
async clickToOpenLinkButton() {
|
|
60
|
-
Logger_1.Logger.debug('DialogWindow.clickToOpenLinkButton');
|
|
61
|
-
await this.clickToButton('Open Link');
|
|
62
|
-
}
|
|
63
|
-
async waitDialog(dialogText = '', timeout = TimeoutConstants_1.TimeoutConstants.TS_DIALOG_WINDOW_DEFAULT_TIMEOUT) {
|
|
64
|
-
Logger_1.Logger.debug('DialogWindow.waitDialog');
|
|
65
|
-
// if dialog text is provided uses xpath with this text
|
|
66
|
-
// if not uses window body xpath
|
|
67
|
-
const dialogWithTextXpathLocator = `${DialogWindow_1.DIALOG_BODY_XPATH_LOCATOR}//*[contains(text(), '${dialogText}')]`;
|
|
68
|
-
const dialogXpathLocator = (dialogText ? dialogWithTextXpathLocator : DialogWindow_1.DIALOG_BODY_XPATH_LOCATOR);
|
|
69
|
-
await this.driverHelper.waitVisibility(selenium_webdriver_1.By.xpath(dialogXpathLocator), timeout);
|
|
70
|
-
}
|
|
71
|
-
async waitDialogAndOpenLink(dialogText = '', applicationReaddyTimeout) {
|
|
72
|
-
Logger_1.Logger.debug('DialogWindow.waitDialogAndOpenLink');
|
|
73
|
-
await this.waitDialog(dialogText, applicationReaddyTimeout);
|
|
74
|
-
await this.ide.waitApllicationIsReady(await this.getApplicationUrlFromDialog(dialogText), applicationReaddyTimeout);
|
|
75
|
-
await this.clickToOpenLinkButton();
|
|
76
|
-
await this.waitDialogDissappearance();
|
|
77
|
-
}
|
|
78
|
-
async waitDialogDissappearance() {
|
|
79
|
-
Logger_1.Logger.debug('DialogWindow.waitDialogDissappearance');
|
|
80
|
-
await this.driverHelper.waitDisappearanceWithTimeout(selenium_webdriver_1.By.xpath(DialogWindow_1.CLOSE_BUTTON_XPATH_LOCATOR), TimeoutConstants_1.TimeoutConstants.TS_DIALOG_WINDOW_DEFAULT_TIMEOUT);
|
|
81
|
-
}
|
|
82
|
-
async getApplicationUrlFromDialog(dialogWindowText) {
|
|
83
|
-
const notificationTextLocator = selenium_webdriver_1.By.xpath(`${DialogWindow_1.DIALOG_BODY_XPATH_LOCATOR}//*[contains(text(), '${dialogWindowText}')]`);
|
|
84
|
-
let dialogWindow = await this.driverHelper.waitAndGetText(notificationTextLocator);
|
|
85
|
-
let regexp = new RegExp('^.*(https?://.*)$');
|
|
86
|
-
if (!regexp.test(dialogWindow)) {
|
|
87
|
-
throw new Error('Cannot obtaine url from notification message');
|
|
88
|
-
}
|
|
89
|
-
return dialogWindow.split(regexp)[1];
|
|
90
|
-
}
|
|
91
|
-
};
|
|
92
|
-
DialogWindow.DIALOG_BODY_XPATH_LOCATOR = '//div[@id=\'theia-dialog-shell\']//div[@class=\'dialogBlock\']';
|
|
93
|
-
DialogWindow.CLOSE_BUTTON_XPATH_LOCATOR = `${DialogWindow_1.DIALOG_BODY_XPATH_LOCATOR}//button[text()='close']`;
|
|
94
|
-
DialogWindow = DialogWindow_1 = __decorate([
|
|
95
|
-
inversify_1.injectable(),
|
|
96
|
-
__param(0, inversify_1.inject(inversify_types_1.CLASSES.DriverHelper)),
|
|
97
|
-
__param(1, inversify_1.inject(inversify_types_1.CLASSES.Ide)),
|
|
98
|
-
__metadata("design:paramtypes", [DriverHelper_1.DriverHelper,
|
|
99
|
-
Ide_1.Ide])
|
|
100
|
-
], DialogWindow);
|
|
101
|
-
exports.DialogWindow = DialogWindow;
|
|
102
|
-
//# sourceMappingURL=DialogWindow.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"DialogWindow.js","sourceRoot":"","sources":["../../../pageobjects/ide/DialogWindow.ts"],"names":[],"mappings":"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"}
|