@eclipse-che/che-e2e 7.68.0 → 7.69.0-dev-ac76de0
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.config.ts +2 -2
- package/configs/inversify.types.ts +1 -2
- package/configs/mocharc.ts +2 -2
- package/constants/TestConstants.ts +10 -13
- package/index.ts +5 -5
- package/package.json +4 -3
- package/specs/api/DevfileAcceptanceTestAPI.spec.ts +90 -33
- package/specs/api/EmptyWorkspaceAPI.spec.ts +3 -3
- package/specs/devconsole-intergration/DevConsoleIntegration.spec.ts +2 -2
- package/specs/factory/Factory.spec.ts +2 -2
- package/specs/factory/NoSetupRepoFactory.spec.ts +2 -2
- package/specs/factory/RefusedOAuthFactory.spec.ts +2 -2
- package/utils/CheReporter.ts +3 -4
- package/utils/DevfilesRegistryHelper.ts +77 -0
- package/utils/KubernetesCommandLineToolsExecutor.ts +20 -7
- package/utils/ScreenCatcher.ts +3 -4
- package/utils/{vsc/GitUtil.ts → StringUtil.ts} +19 -15
- package/constants/DevfilesRegistryConstants.ts +0 -26
- package/dist/configs/inversify.config.js +0 -70
- package/dist/configs/inversify.config.js.map +0 -1
- package/dist/configs/inversify.types.js +0 -45
- package/dist/configs/inversify.types.js.map +0 -1
- package/dist/configs/mocharc.js +0 -27
- package/dist/configs/mocharc.js.map +0 -1
- package/dist/constants/DevfilesRegistryConstants.js +0 -32
- package/dist/constants/DevfilesRegistryConstants.js.map +0 -1
- package/dist/constants/TestConstants.js +0 -207
- package/dist/constants/TestConstants.js.map +0 -1
- package/dist/constants/TimeoutConstants.js +0 -184
- package/dist/constants/TimeoutConstants.js.map +0 -1
- package/dist/driver/ChromeDriver.js +0 -79
- 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 -69
- package/dist/index.js.map +0 -1
- package/dist/pageobjects/dashboard/CreateWorkspace.js +0 -98
- package/dist/pageobjects/dashboard/CreateWorkspace.js.map +0 -1
- package/dist/pageobjects/dashboard/Dashboard.js +0 -135
- package/dist/pageobjects/dashboard/Dashboard.js.map +0 -1
- package/dist/pageobjects/dashboard/Workspaces.js +0 -184
- package/dist/pageobjects/dashboard/Workspaces.js.map +0 -1
- package/dist/pageobjects/dashboard/workspace-details/WorkspaceDetails.js +0 -140
- package/dist/pageobjects/dashboard/workspace-details/WorkspaceDetails.js.map +0 -1
- package/dist/pageobjects/git-providers/OauthPage.js +0 -150
- package/dist/pageobjects/git-providers/OauthPage.js.map +0 -1
- package/dist/pageobjects/ide/CheCodeLocatorLoader.js +0 -70
- package/dist/pageobjects/ide/CheCodeLocatorLoader.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/OcpRedHatLoginPage.js +0 -67
- package/dist/pageobjects/login/OcpRedHatLoginPage.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/RedHatLoginPage.js +0 -77
- package/dist/pageobjects/login/RedHatLoginPage.js.map +0 -1
- package/dist/pageobjects/login/RegularUserOcpCheLoginPage.js +0 -68
- package/dist/pageobjects/login/RegularUserOcpCheLoginPage.js.map +0 -1
- package/dist/pageobjects/openshift/CheLoginPage.js +0 -55
- package/dist/pageobjects/openshift/CheLoginPage.js.map +0 -1
- package/dist/pageobjects/openshift/OcpApplicationPage.js +0 -60
- package/dist/pageobjects/openshift/OcpApplicationPage.js.map +0 -1
- package/dist/pageobjects/openshift/OcpImportFromGitPage.js +0 -91
- package/dist/pageobjects/openshift/OcpImportFromGitPage.js.map +0 -1
- package/dist/pageobjects/openshift/OcpLoginPage.js +0 -92
- package/dist/pageobjects/openshift/OcpLoginPage.js.map +0 -1
- package/dist/pageobjects/openshift/OcpMainPage.js +0 -108
- package/dist/pageobjects/openshift/OcpMainPage.js.map +0 -1
- package/dist/specs/MochaHooks.js +0 -89
- package/dist/specs/MochaHooks.js.map +0 -1
- package/dist/specs/SmokeTest.spec.js +0 -49
- package/dist/specs/SmokeTest.spec.js.map +0 -1
- package/dist/specs/api/ContainerOverridesAPI.spec.js +0 -37
- package/dist/specs/api/ContainerOverridesAPI.spec.js.map +0 -1
- package/dist/specs/api/DevfileAcceptanceTestAPI.spec.js +0 -40
- package/dist/specs/api/DevfileAcceptanceTestAPI.spec.js.map +0 -1
- package/dist/specs/api/EmptyWorkspaceAPI.spec.js +0 -61
- package/dist/specs/api/EmptyWorkspaceAPI.spec.js.map +0 -1
- package/dist/specs/api/PodOverridesAPI.spec.js +0 -43
- package/dist/specs/api/PodOverridesAPI.spec.js.map +0 -1
- package/dist/specs/dashboard-samples/EmptyWorkspace.spec.js +0 -48
- package/dist/specs/dashboard-samples/EmptyWorkspace.spec.js.map +0 -1
- package/dist/specs/dashboard-samples/Quarkus.spec.js +0 -50
- package/dist/specs/dashboard-samples/Quarkus.spec.js.map +0 -1
- package/dist/specs/dashboard-samples/RecomendedExtentions.spec.js +0 -161
- package/dist/specs/dashboard-samples/RecomendedExtentions.spec.js.map +0 -1
- package/dist/specs/devconsole-intergration/DevConsoleIntegration.spec.js +0 -75
- package/dist/specs/devconsole-intergration/DevConsoleIntegration.spec.js.map +0 -1
- package/dist/specs/factory/Factory.spec.js +0 -160
- package/dist/specs/factory/Factory.spec.js.map +0 -1
- package/dist/specs/factory/NoSetupRepoFactory.spec.js +0 -228
- package/dist/specs/factory/NoSetupRepoFactory.spec.js.map +0 -1
- package/dist/specs/factory/RefusedOAuthFactory.spec.js +0 -220
- package/dist/specs/factory/RefusedOAuthFactory.spec.js.map +0 -1
- package/dist/specs/miscellaneous/PredefinedNamespace.spec.js +0 -66
- package/dist/specs/miscellaneous/PredefinedNamespace.spec.js.map +0 -1
- package/dist/tests-library/LoginTests.js +0 -70
- package/dist/tests-library/LoginTests.js.map +0 -1
- package/dist/tests-library/ProjectAndFileTests.js +0 -56
- package/dist/tests-library/ProjectAndFileTests.js.map +0 -1
- package/dist/tests-library/WorkspaceHandlingTests.js +0 -160
- package/dist/tests-library/WorkspaceHandlingTests.js.map +0 -1
- package/dist/utils/BrowserTabsUtil.js +0 -111
- package/dist/utils/BrowserTabsUtil.js.map +0 -1
- package/dist/utils/CheReporter.js +0 -172
- package/dist/utils/CheReporter.js.map +0 -1
- package/dist/utils/DevWorkspaceConfigurationHelper.js +0 -72
- package/dist/utils/DevWorkspaceConfigurationHelper.js.map +0 -1
- package/dist/utils/DriverHelper.js +0 -591
- package/dist/utils/DriverHelper.js.map +0 -1
- package/dist/utils/KubernetesCommandLineToolsExecutor.js +0 -162
- package/dist/utils/KubernetesCommandLineToolsExecutor.js.map +0 -1
- package/dist/utils/Logger.js +0 -89
- package/dist/utils/Logger.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/ShellExecutor.js +0 -18
- package/dist/utils/ShellExecutor.js.map +0 -1
- package/dist/utils/request-handlers/CheApiRequestHandler.js +0 -126
- package/dist/utils/request-handlers/CheApiRequestHandler.js.map +0 -1
- package/dist/utils/request-handlers/headers/CheMultiuserAuthorizationHeaderHandler.js +0 -49
- package/dist/utils/request-handlers/headers/CheMultiuserAuthorizationHeaderHandler.js.map +0 -1
- package/dist/utils/request-handlers/headers/IAuthorizationHeaderHandler.js +0 -12
- package/dist/utils/request-handlers/headers/IAuthorizationHeaderHandler.js.map +0 -1
- package/dist/utils/vsc/GitUtil.js +0 -57
- package/dist/utils/vsc/GitUtil.js.map +0 -1
- package/dist/utils/workspace/ApiUrlResolver.js +0 -64
- 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 -167
- 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
- package/utils/Sanitizer.ts +0 -19
|
@@ -1,161 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
/*********************************************************************
|
|
3
|
-
* Copyright (c) 2019-2023 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
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
|
-
const monaco_page_objects_1 = require("monaco-page-objects");
|
|
13
|
-
const MochaHooks_1 = require("../MochaHooks");
|
|
14
|
-
const inversify_config_1 = require("../../configs/inversify.config");
|
|
15
|
-
const inversify_types_1 = require("../../configs/inversify.types");
|
|
16
|
-
const WorkspaceHandlingTests_1 = require("../../tests-library/WorkspaceHandlingTests");
|
|
17
|
-
const Logger_1 = require("../../utils/Logger");
|
|
18
|
-
const CheCodeLocatorLoader_1 = require("../../pageobjects/ide/CheCodeLocatorLoader");
|
|
19
|
-
const chai_1 = require("chai");
|
|
20
|
-
const TimeoutConstants_1 = require("../../constants/TimeoutConstants");
|
|
21
|
-
const TestConstants_1 = require("../../constants/TestConstants");
|
|
22
|
-
const projectAndFileTests = inversify_config_1.e2eContainer.get(inversify_types_1.CLASSES.ProjectAndFileTests);
|
|
23
|
-
const workspaceHandlingTests = inversify_config_1.e2eContainer.get(inversify_types_1.CLASSES.WorkspaceHandlingTests);
|
|
24
|
-
const loginTests = inversify_config_1.e2eContainer.get(inversify_types_1.CLASSES.LoginTests);
|
|
25
|
-
const driverHelper = inversify_config_1.e2eContainer.get(inversify_types_1.CLASSES.DriverHelper);
|
|
26
|
-
const webCheCodeLocators = new CheCodeLocatorLoader_1.CheCodeLocatorLoader().webCheCodeLocators;
|
|
27
|
-
const samples = TestConstants_1.TestConstants.TS_SAMPLE_LIST.split(',');
|
|
28
|
-
const browserTabsUtil = inversify_config_1.e2eContainer.get(inversify_types_1.CLASSES.BrowserTabsUtil);
|
|
29
|
-
suite(`Check if recommended extensions installed for ${samples}`, async function () {
|
|
30
|
-
let projectSection;
|
|
31
|
-
let extensionsView;
|
|
32
|
-
let extensionSection;
|
|
33
|
-
const extensionsListFileName = 'extensions.json';
|
|
34
|
-
let recommendedExtensions = {
|
|
35
|
-
recommendations: []
|
|
36
|
-
};
|
|
37
|
-
loginTests.loginIntoChe();
|
|
38
|
-
for (const sample of samples) {
|
|
39
|
-
workspaceHandlingTests.createAndOpenWorkspace(sample);
|
|
40
|
-
workspaceHandlingTests.obtainWorkspaceNameFromStartingPage();
|
|
41
|
-
test('Registering the running workspace', async function () {
|
|
42
|
-
MochaHooks_1.registerRunningWorkspace(WorkspaceHandlingTests_1.WorkspaceHandlingTests.getWorkspaceName());
|
|
43
|
-
});
|
|
44
|
-
test('Wait workspace readiness', async function () {
|
|
45
|
-
await projectAndFileTests.waitWorkspaceReadinessForCheCodeEditor();
|
|
46
|
-
});
|
|
47
|
-
test('Wait until the project will be imported and accept it as trusted one', async function () {
|
|
48
|
-
[projectSection] = await new monaco_page_objects_1.SideBarView().getContent().getSections();
|
|
49
|
-
const label = TestConstants_1.TestConstants.TS_SELENIUM_PROJECT_ROOT_FILE_NAME;
|
|
50
|
-
Logger_1.Logger.debug(`projectSection.findItem: find ${label}`);
|
|
51
|
-
const isFileImported = await projectSection.findItem(label);
|
|
52
|
-
chai_1.expect(isFileImported).not.eqls(undefined);
|
|
53
|
-
try {
|
|
54
|
-
const buttonYesITrustTheAuthors = `Yes, I trust the authors`;
|
|
55
|
-
await driverHelper.waitVisibility(webCheCodeLocators.WelcomeContent.button, TimeoutConstants_1.TimeoutConstants.TS_DIALOG_WINDOW_DEFAULT_TIMEOUT);
|
|
56
|
-
const trustedProjectDialog = new monaco_page_objects_1.ModalDialog();
|
|
57
|
-
Logger_1.Logger.debug(`trustedProjectDialog.pushButton: "${buttonYesITrustTheAuthors}"`);
|
|
58
|
-
await trustedProjectDialog.pushButton(buttonYesITrustTheAuthors);
|
|
59
|
-
}
|
|
60
|
-
catch (e) {
|
|
61
|
-
Logger_1.Logger.debug(`Welcome modal dialog was not shown: ${e}`);
|
|
62
|
-
}
|
|
63
|
-
});
|
|
64
|
-
test(`Get recommended extensions list from ${extensionsListFileName}`, async function () {
|
|
65
|
-
var _a, _b;
|
|
66
|
-
Logger_1.Logger.debug(`projectSection.findItem(item))?.select(): expand .vscode folder and open extensions.json.`);
|
|
67
|
-
await ((_a = (await projectSection.findItem('.vscode'))) === null || _a === void 0 ? void 0 : _a.select());
|
|
68
|
-
// time to expand project tree
|
|
69
|
-
await driverHelper.wait(TimeoutConstants_1.TimeoutConstants.TS_EXPAND_PROJECT_TREE_ITEM_TIMEOUT);
|
|
70
|
-
await ((_b = (await projectSection.findItem(extensionsListFileName))) === null || _b === void 0 ? void 0 : _b.select());
|
|
71
|
-
Logger_1.Logger.debug(`EditorView().openEditor(${extensionsListFileName})`);
|
|
72
|
-
const editor = await new monaco_page_objects_1.EditorView().openEditor(extensionsListFileName);
|
|
73
|
-
await driverHelper.waitVisibility(webCheCodeLocators.Editor.inputArea);
|
|
74
|
-
Logger_1.Logger.debug(`editor.getText(): get recommended extensions as text from editor, delete comments and parse to object.`);
|
|
75
|
-
recommendedExtensions = JSON.parse((await editor.getText()).replace(/\/\*[\s\S]*?\*\/|(?<=[^:])\/\/.*|^\/\/.*/g, '').trim());
|
|
76
|
-
Logger_1.Logger.debug(`recommendedExtensions.recommendations: Get recommendations clear names using map().`);
|
|
77
|
-
recommendedExtensions.recommendations = recommendedExtensions.recommendations.map((r) => {
|
|
78
|
-
const [publisher, name] = r.split('.');
|
|
79
|
-
return { publisher, name };
|
|
80
|
-
});
|
|
81
|
-
Logger_1.Logger.info(`Recommended extension for this workspace:\n${JSON.stringify(recommendedExtensions.recommendations)}.`);
|
|
82
|
-
});
|
|
83
|
-
test(`Open "Extensions" view section`, async function () {
|
|
84
|
-
var _a;
|
|
85
|
-
Logger_1.Logger.debug(`ActivityBar().getViewControl('Extensions'))?.openView(): open Extensions view.`);
|
|
86
|
-
extensionsView = await ((_a = (await new monaco_page_objects_1.ActivityBar().getViewControl('Extensions'))) === null || _a === void 0 ? void 0 : _a.openView());
|
|
87
|
-
});
|
|
88
|
-
test(`Let extensions complete installation`, async function () {
|
|
89
|
-
Logger_1.Logger.info(`Time for extensions installation TimeoutConstants.TS_COMMON_PLUGIN_TEST_TIMEOUT=${TimeoutConstants_1.TimeoutConstants.TS_COMMON_PLUGIN_TEST_TIMEOUT}`);
|
|
90
|
-
await driverHelper.wait(TimeoutConstants_1.TimeoutConstants.TS_COMMON_PLUGIN_TEST_TIMEOUT);
|
|
91
|
-
});
|
|
92
|
-
test(`Check if extensions are installed and enabled`, async function () {
|
|
93
|
-
var _a, _b;
|
|
94
|
-
this.retries(10);
|
|
95
|
-
Logger_1.Logger.debug(`ActivityBar().getViewControl('Extensions'))?.openView(): open Extensions view.`);
|
|
96
|
-
extensionsView = await ((_a = (await new monaco_page_objects_1.ActivityBar().getViewControl('Extensions'))) === null || _a === void 0 ? void 0 : _a.openView());
|
|
97
|
-
Logger_1.Logger.debug(`extensionsView?.getContent().getSections(): get current section.`);
|
|
98
|
-
[extensionSection] = await (extensionsView === null || extensionsView === void 0 ? void 0 : extensionsView.getContent().getSections());
|
|
99
|
-
await driverHelper.waitAllPresence(webCheCodeLocators.ExtensionsViewSection.itemTitle, TimeoutConstants_1.TimeoutConstants.TS_EDITOR_TAB_INTERACTION_TIMEOUT);
|
|
100
|
-
for (const extension of recommendedExtensions.recommendations) {
|
|
101
|
-
Logger_1.Logger.info(`Check if ${JSON.stringify(extension)} are installed.`);
|
|
102
|
-
Logger_1.Logger.debug(`extensionSection.findItem(${extension.name}).`);
|
|
103
|
-
await extensionSection.findItem(extension.name);
|
|
104
|
-
// check if extension require reload the page
|
|
105
|
-
if (await driverHelper.isVisible(webCheCodeLocators.ExtensionsViewSection.requireReloadButton)) {
|
|
106
|
-
Logger_1.Logger.debug(`Extension require reload the editor. Refreshing the page..`);
|
|
107
|
-
await browserTabsUtil.refreshPage();
|
|
108
|
-
await projectAndFileTests.waitWorkspaceReadinessForCheCodeEditor();
|
|
109
|
-
Logger_1.Logger.debug(`ActivityBar().getViewControl('Extensions'))?.openView(): open Extensions view.`);
|
|
110
|
-
extensionsView = await ((_b = (await new monaco_page_objects_1.ActivityBar().getViewControl('Extensions'))) === null || _b === void 0 ? void 0 : _b.openView());
|
|
111
|
-
Logger_1.Logger.debug(`extensionsView?.getContent().getSections(): get current section.`);
|
|
112
|
-
[extensionSection] = await (extensionsView === null || extensionsView === void 0 ? void 0 : extensionsView.getContent().getSections());
|
|
113
|
-
await driverHelper.waitAllPresence(webCheCodeLocators.ExtensionsViewSection.itemTitle, TimeoutConstants_1.TimeoutConstants.TS_EDITOR_TAB_INTERACTION_TIMEOUT);
|
|
114
|
-
Logger_1.Logger.debug(`extensionSection.findItem(${extension.name}).`);
|
|
115
|
-
await extensionSection.findItem(extension.name);
|
|
116
|
-
}
|
|
117
|
-
Logger_1.Logger.debug(`extensionsView?.getContent().getSections(): switch to marketplace section.`);
|
|
118
|
-
const [marketplaceSection] = await (extensionsView === null || extensionsView === void 0 ? void 0 : extensionsView.getContent().getSections());
|
|
119
|
-
await driverHelper.waitVisibility(webCheCodeLocators.ExtensionsViewSection.items, TimeoutConstants_1.TimeoutConstants.TS_EDITOR_TAB_INTERACTION_TIMEOUT);
|
|
120
|
-
Logger_1.Logger.debug(`marketplaceSection.getVisibleItems(): get all found items.`);
|
|
121
|
-
const allFinedItems = await marketplaceSection.getVisibleItems();
|
|
122
|
-
let itemWithRightNameAndPublisher;
|
|
123
|
-
for (const item of allFinedItems) {
|
|
124
|
-
Logger_1.Logger.debug(`Try to find extension published by ${extension.publisher}.`);
|
|
125
|
-
if (await item.getAuthor() === extension.publisher) {
|
|
126
|
-
itemWithRightNameAndPublisher = item;
|
|
127
|
-
Logger_1.Logger.debug(`Extension was found: ${await (itemWithRightNameAndPublisher === null || itemWithRightNameAndPublisher === void 0 ? void 0 : itemWithRightNameAndPublisher.getTitle())}`);
|
|
128
|
-
break;
|
|
129
|
-
}
|
|
130
|
-
if (itemWithRightNameAndPublisher === undefined) {
|
|
131
|
-
Logger_1.Logger.error(`Extension with publisher as ${extension.publisher} was not found.`);
|
|
132
|
-
}
|
|
133
|
-
}
|
|
134
|
-
Logger_1.Logger.debug(`itemWithRightNameAndPublisher?.isInstalled()`);
|
|
135
|
-
const isInstalled = await (itemWithRightNameAndPublisher === null || itemWithRightNameAndPublisher === void 0 ? void 0 : itemWithRightNameAndPublisher.isInstalled());
|
|
136
|
-
Logger_1.Logger.debug(`itemWithRightNameAndPublisher?.isInstalled(): ${isInstalled}.`);
|
|
137
|
-
chai_1.expect(isInstalled).eqls(true);
|
|
138
|
-
Logger_1.Logger.debug(`itemWithRightNameAndPublisher.manage(): get context menu.`);
|
|
139
|
-
const extensionManageMenu = await itemWithRightNameAndPublisher.manage();
|
|
140
|
-
Logger_1.Logger.debug(`extensionManageMenu.getItems(): get menu items.`);
|
|
141
|
-
const extensionMenuItems = await extensionManageMenu.getItems();
|
|
142
|
-
let extensionMenuItemLabels = '';
|
|
143
|
-
for (const item of extensionMenuItems) {
|
|
144
|
-
Logger_1.Logger.trace(`extensionMenuItems -> item.getLabel(): get menu items names.`);
|
|
145
|
-
extensionMenuItemLabels += (await item.getLabel()) + ' ';
|
|
146
|
-
}
|
|
147
|
-
Logger_1.Logger.debug(`extensionMenuItemLabels: ${extensionMenuItemLabels}.`);
|
|
148
|
-
chai_1.expect(extensionMenuItemLabels).contains('Disable').and.not.contains('Enable');
|
|
149
|
-
}
|
|
150
|
-
});
|
|
151
|
-
test('Stop the workspace', async function () {
|
|
152
|
-
await workspaceHandlingTests.stopWorkspace(WorkspaceHandlingTests_1.WorkspaceHandlingTests.getWorkspaceName());
|
|
153
|
-
await browserTabsUtil.closeAllTabsExceptCurrent();
|
|
154
|
-
});
|
|
155
|
-
test('Delete the workspace', async function () {
|
|
156
|
-
await workspaceHandlingTests.removeWorkspace(WorkspaceHandlingTests_1.WorkspaceHandlingTests.getWorkspaceName());
|
|
157
|
-
});
|
|
158
|
-
}
|
|
159
|
-
loginTests.logoutFromChe();
|
|
160
|
-
});
|
|
161
|
-
//# sourceMappingURL=RecomendedExtentions.spec.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"RecomendedExtentions.spec.js","sourceRoot":"","sources":["../../../specs/dashboard-samples/RecomendedExtentions.spec.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,75 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
/*********************************************************************
|
|
3
|
-
* Copyright (c) 2019-2023 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
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
|
-
const monaco_page_objects_1 = require("monaco-page-objects");
|
|
13
|
-
const MochaHooks_1 = require("../MochaHooks");
|
|
14
|
-
const inversify_config_1 = require("../../configs/inversify.config");
|
|
15
|
-
const inversify_types_1 = require("../../configs/inversify.types");
|
|
16
|
-
const WorkspaceHandlingTests_1 = require("../../tests-library/WorkspaceHandlingTests");
|
|
17
|
-
const chai_1 = require("chai");
|
|
18
|
-
const TestConstants_1 = require("../../constants/TestConstants");
|
|
19
|
-
const KubernetesCommandLineToolsExecutor_1 = require("../../utils/KubernetesCommandLineToolsExecutor");
|
|
20
|
-
const GitUtil_1 = require("../../utils/vsc/GitUtil");
|
|
21
|
-
const projectAndFileTests = inversify_config_1.e2eContainer.get(inversify_types_1.CLASSES.ProjectAndFileTests);
|
|
22
|
-
const loginTests = inversify_config_1.e2eContainer.get(inversify_types_1.CLASSES.LoginTests);
|
|
23
|
-
const workspaceHandlingTests = inversify_config_1.e2eContainer.get(inversify_types_1.CLASSES.WorkspaceHandlingTests);
|
|
24
|
-
const ocpMainPage = inversify_config_1.e2eContainer.get(inversify_types_1.CLASSES.OcpMainPage);
|
|
25
|
-
let ocpImportPage;
|
|
26
|
-
let ocpApplicationPage;
|
|
27
|
-
const kubernetesCommandLineToolsExecutor = new KubernetesCommandLineToolsExecutor_1.KubernetesCommandLineToolsExecutor();
|
|
28
|
-
// works only with no-admin user
|
|
29
|
-
suite(`DevConsole Integration`, async function () {
|
|
30
|
-
// test specific data
|
|
31
|
-
const gitImportRepo = 'https://github.com/crw-qe/summit-lab-spring-music.git';
|
|
32
|
-
const gitImportReference = 'pipeline';
|
|
33
|
-
const projectLabel = 'app.openshift.io/runtime=spring';
|
|
34
|
-
const projectName = 'devconsole-integration-test';
|
|
35
|
-
suiteSetup('Create new empty project using ocp', async function () {
|
|
36
|
-
kubernetesCommandLineToolsExecutor.loginToOcp();
|
|
37
|
-
kubernetesCommandLineToolsExecutor.createProject(projectName);
|
|
38
|
-
});
|
|
39
|
-
loginTests.loginIntoOcpConsole();
|
|
40
|
-
test('Select test project and Developer role on DevConsole', async function () {
|
|
41
|
-
await ocpMainPage.selectDeveloperRole();
|
|
42
|
-
await ocpMainPage.selectProject(projectName);
|
|
43
|
-
});
|
|
44
|
-
test('Open import from git project page', async function () {
|
|
45
|
-
ocpImportPage = await ocpMainPage.openImportFromGitPage();
|
|
46
|
-
});
|
|
47
|
-
test('Fill and submit import data', async function () {
|
|
48
|
-
ocpApplicationPage = await ocpImportPage.fitAndSubmitConfiguration(gitImportRepo, gitImportReference, projectLabel);
|
|
49
|
-
});
|
|
50
|
-
test('Wait until application creates', async function () {
|
|
51
|
-
await ocpApplicationPage.waitApplicationIcon();
|
|
52
|
-
});
|
|
53
|
-
test('Check if application has worked link "Open Source Code"', async function () {
|
|
54
|
-
await ocpApplicationPage.waitAndOpenEditSourceCodeIcon();
|
|
55
|
-
});
|
|
56
|
-
loginTests.loginIntoChe();
|
|
57
|
-
workspaceHandlingTests.obtainWorkspaceNameFromStartingPage();
|
|
58
|
-
test('Registering the running workspace', async function () {
|
|
59
|
-
MochaHooks_1.registerRunningWorkspace(WorkspaceHandlingTests_1.WorkspaceHandlingTests.getWorkspaceName());
|
|
60
|
-
});
|
|
61
|
-
test('Check if application source code opens in workspace', async function () {
|
|
62
|
-
await projectAndFileTests.waitWorkspaceReadinessForCheCodeEditor();
|
|
63
|
-
});
|
|
64
|
-
test('Check if project and files imported', async function () {
|
|
65
|
-
const applicationSourceProjectName = GitUtil_1.GitUtil.getProjectNameFromGitUrl(gitImportRepo);
|
|
66
|
-
const projectSection = await new monaco_page_objects_1.SideBarView().getContent().getSection(applicationSourceProjectName);
|
|
67
|
-
const isFileImported = await projectSection.findItem(TestConstants_1.TestConstants.TS_SELENIUM_PROJECT_ROOT_FILE_NAME);
|
|
68
|
-
chai_1.expect(isFileImported).not.eqls(undefined);
|
|
69
|
-
});
|
|
70
|
-
loginTests.logoutFromChe();
|
|
71
|
-
suiteTeardown('Delete project using ocp', async function () {
|
|
72
|
-
kubernetesCommandLineToolsExecutor.deleteProject(projectName);
|
|
73
|
-
});
|
|
74
|
-
});
|
|
75
|
-
//# sourceMappingURL=DevConsoleIntegration.spec.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"DevConsoleIntegration.spec.js","sourceRoot":"","sources":["../../../specs/devconsole-intergration/DevConsoleIntegration.spec.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,160 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
/*********************************************************************
|
|
3
|
-
* Copyright (c) 2021 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
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
|
-
require("reflect-metadata");
|
|
13
|
-
const inversify_config_1 = require("../../configs/inversify.config");
|
|
14
|
-
const monaco_page_objects_1 = require("monaco-page-objects");
|
|
15
|
-
const TestConstants_1 = require("../../constants/TestConstants");
|
|
16
|
-
const chai_1 = require("chai");
|
|
17
|
-
const OauthPage_1 = require("../../pageobjects/git-providers/OauthPage");
|
|
18
|
-
const GitUtil_1 = require("../../utils/vsc/GitUtil");
|
|
19
|
-
const CheCodeLocatorLoader_1 = require("../../pageobjects/ide/CheCodeLocatorLoader");
|
|
20
|
-
const MochaHooks_1 = require("../MochaHooks");
|
|
21
|
-
const WorkspaceHandlingTests_1 = require("../../tests-library/WorkspaceHandlingTests");
|
|
22
|
-
const inversify_types_1 = require("../../configs/inversify.types");
|
|
23
|
-
const Logger_1 = require("../../utils/Logger");
|
|
24
|
-
const browserTabsUtil = inversify_config_1.e2eContainer.get(inversify_types_1.CLASSES.BrowserTabsUtil);
|
|
25
|
-
const workspaceHandlingTests = inversify_config_1.e2eContainer.get(inversify_types_1.CLASSES.WorkspaceHandlingTests);
|
|
26
|
-
const projectAndFileTests = inversify_config_1.e2eContainer.get(inversify_types_1.CLASSES.ProjectAndFileTests);
|
|
27
|
-
const driverHelper = inversify_config_1.e2eContainer.get(inversify_types_1.CLASSES.DriverHelper);
|
|
28
|
-
const loginTests = inversify_config_1.e2eContainer.get(inversify_types_1.CLASSES.LoginTests);
|
|
29
|
-
const webCheCodeLocators = new CheCodeLocatorLoader_1.CheCodeLocatorLoader().webCheCodeLocators;
|
|
30
|
-
suite(`Create a workspace via launching a factory from the ${TestConstants_1.TestConstants.TS_SELENIUM_FACTORY_GIT_PROVIDER} repository`, async function () {
|
|
31
|
-
const oauthPage = new OauthPage_1.OauthPage(driverHelper);
|
|
32
|
-
let projectSection;
|
|
33
|
-
let scmProvider;
|
|
34
|
-
let rest;
|
|
35
|
-
let scmContextMenu;
|
|
36
|
-
// test specific data
|
|
37
|
-
const timeToRefresh = 1500;
|
|
38
|
-
const changesToCommit = (new Date()).getTime().toString();
|
|
39
|
-
const fileToChange = 'Date.txt';
|
|
40
|
-
const commitChangesButtonLabel = `Commit Changes on "${TestConstants_1.TestConstants.TS_SELENIUM_FACTORY_GIT_REPO_BRANCH}"`;
|
|
41
|
-
const refreshButtonLabel = 'Refresh';
|
|
42
|
-
const pushItemLabel = 'Push';
|
|
43
|
-
let testRepoProjectName;
|
|
44
|
-
loginTests.loginIntoChe();
|
|
45
|
-
test(`Navigate to the factory URL`, async function () {
|
|
46
|
-
await browserTabsUtil.navigateTo(TestConstants_1.TestConstants.TS_SELENIUM_FACTORY_URL());
|
|
47
|
-
});
|
|
48
|
-
if (TestConstants_1.TestConstants.TS_SELENIUM_GIT_PROVIDER_OAUTH) {
|
|
49
|
-
test(`Authorize with a ${TestConstants_1.TestConstants.TS_SELENIUM_FACTORY_GIT_PROVIDER} OAuth`, async function () {
|
|
50
|
-
await oauthPage.login();
|
|
51
|
-
await oauthPage.waitOauthPage();
|
|
52
|
-
await oauthPage.confirmAccess();
|
|
53
|
-
});
|
|
54
|
-
}
|
|
55
|
-
workspaceHandlingTests.obtainWorkspaceNameFromStartingPage();
|
|
56
|
-
test('Registering the running workspace', async function () {
|
|
57
|
-
MochaHooks_1.registerRunningWorkspace(WorkspaceHandlingTests_1.WorkspaceHandlingTests.getWorkspaceName());
|
|
58
|
-
});
|
|
59
|
-
test('Wait the workspace readiness', async function () {
|
|
60
|
-
await projectAndFileTests.waitWorkspaceReadinessForCheCodeEditor();
|
|
61
|
-
});
|
|
62
|
-
test('Check if a project folder has been created', async function () {
|
|
63
|
-
testRepoProjectName = GitUtil_1.GitUtil.getProjectNameFromGitUrl(TestConstants_1.TestConstants.TS_SELENIUM_FACTORY_GIT_REPO_URL);
|
|
64
|
-
Logger_1.Logger.debug(`new SideBarView().getContent().getSection: get ${testRepoProjectName}`);
|
|
65
|
-
projectSection = await new monaco_page_objects_1.SideBarView().getContent().getSection(testRepoProjectName);
|
|
66
|
-
});
|
|
67
|
-
test('Check if the project files were imported', async function () {
|
|
68
|
-
const label = TestConstants_1.TestConstants.TS_SELENIUM_PROJECT_ROOT_FILE_NAME;
|
|
69
|
-
Logger_1.Logger.debug(`projectSection.findItem: find ${label}`);
|
|
70
|
-
const isFileImported = await projectSection.findItem(label);
|
|
71
|
-
chai_1.expect(isFileImported).not.eqls(undefined);
|
|
72
|
-
});
|
|
73
|
-
test('Accept the project as a trusted one', async function () {
|
|
74
|
-
const buttonYesITrustTheAuthors = `Yes, I trust the authors`;
|
|
75
|
-
const trustedProjectDialog = new monaco_page_objects_1.ModalDialog();
|
|
76
|
-
await driverHelper.waitVisibility(webCheCodeLocators.WelcomeContent.button);
|
|
77
|
-
Logger_1.Logger.debug(`trustedProjectDialog.pushButton: "${buttonYesITrustTheAuthors}"`);
|
|
78
|
-
await trustedProjectDialog.pushButton(buttonYesITrustTheAuthors);
|
|
79
|
-
});
|
|
80
|
-
test('Make changes to the file', async function () {
|
|
81
|
-
Logger_1.Logger.debug(`projectSection.openItem: "${fileToChange}"`);
|
|
82
|
-
await projectSection.openItem(fileToChange);
|
|
83
|
-
const editor = await new monaco_page_objects_1.EditorView().openEditor(fileToChange);
|
|
84
|
-
await driverHelper.waitVisibility(webCheCodeLocators.Editor.inputArea);
|
|
85
|
-
Logger_1.Logger.debug(`editor.clearText`);
|
|
86
|
-
await editor.clearText();
|
|
87
|
-
Logger_1.Logger.debug(`editor.typeTextAt: "${changesToCommit}"`);
|
|
88
|
-
await editor.typeTextAt(1, 1, changesToCommit);
|
|
89
|
-
});
|
|
90
|
-
test('Open a source control manager', async function () {
|
|
91
|
-
const viewSourceControl = `Source Control`;
|
|
92
|
-
const sourceControl = await new monaco_page_objects_1.ActivityBar().getViewControl(viewSourceControl);
|
|
93
|
-
Logger_1.Logger.debug(`sourceControl.openView: "${viewSourceControl}"`);
|
|
94
|
-
await sourceControl.openView();
|
|
95
|
-
const scmView = new monaco_page_objects_1.NewScmView();
|
|
96
|
-
await driverHelper.waitVisibility(webCheCodeLocators.ScmView.actionConstructor(commitChangesButtonLabel));
|
|
97
|
-
[scmProvider, ...rest] = await scmView.getProviders();
|
|
98
|
-
Logger_1.Logger.debug(`scmView.getProviders: "${scmProvider}, ${scmProvider}"`);
|
|
99
|
-
});
|
|
100
|
-
test('Check if the changes are displayed in the source control manager', async function () {
|
|
101
|
-
await driverHelper.waitVisibility(webCheCodeLocators.ScmView.more);
|
|
102
|
-
await driverHelper.wait(timeToRefresh);
|
|
103
|
-
Logger_1.Logger.debug(`scmProvider.takeAction: "${refreshButtonLabel}"`);
|
|
104
|
-
await scmProvider.takeAction(refreshButtonLabel);
|
|
105
|
-
// wait while changes counter will be refreshed
|
|
106
|
-
await driverHelper.wait(timeToRefresh);
|
|
107
|
-
const changes = await scmProvider.getChangeCount();
|
|
108
|
-
Logger_1.Logger.debug(`scmProvider.getChangeCount: number of changes is "${changes}"`);
|
|
109
|
-
chai_1.expect(changes).eql(1);
|
|
110
|
-
});
|
|
111
|
-
test('Stage the changes', async function () {
|
|
112
|
-
await driverHelper.waitVisibility(webCheCodeLocators.ScmView.more);
|
|
113
|
-
Logger_1.Logger.debug(`scmProvider.openMoreActions`);
|
|
114
|
-
scmContextMenu = await scmProvider.openMoreActions();
|
|
115
|
-
await driverHelper.waitVisibility(webCheCodeLocators.ContextMenu.contextView);
|
|
116
|
-
Logger_1.Logger.debug(`scmContextMenu.select: "Changes" -> "Stage All Changes"`);
|
|
117
|
-
await scmContextMenu.select('Changes', 'Stage All Changes');
|
|
118
|
-
});
|
|
119
|
-
test('Commit the changes', async function () {
|
|
120
|
-
await driverHelper.waitVisibility(webCheCodeLocators.ScmView.actionConstructor(commitChangesButtonLabel));
|
|
121
|
-
Logger_1.Logger.debug(`scmProvider.commitChanges: commit name "Commit ${changesToCommit}"`);
|
|
122
|
-
await scmProvider.commitChanges('Commit ' + changesToCommit);
|
|
123
|
-
await driverHelper.waitVisibility(webCheCodeLocators.ScmView.more);
|
|
124
|
-
await driverHelper.wait(timeToRefresh);
|
|
125
|
-
Logger_1.Logger.debug(`scmProvider.takeAction: "${refreshButtonLabel}"`);
|
|
126
|
-
await scmProvider.takeAction(refreshButtonLabel);
|
|
127
|
-
// wait while changes counter will be refreshed
|
|
128
|
-
await driverHelper.wait(timeToRefresh);
|
|
129
|
-
const changes = await scmProvider.getChangeCount();
|
|
130
|
-
Logger_1.Logger.debug(`scmProvider.getChangeCount: number of changes is "${changes}"`);
|
|
131
|
-
chai_1.expect(changes).eql(0);
|
|
132
|
-
});
|
|
133
|
-
test('Push the changes', async function () {
|
|
134
|
-
await driverHelper.waitVisibility(webCheCodeLocators.ScmView.actionConstructor(`Push 1 commits to origin/${TestConstants_1.TestConstants.TS_SELENIUM_FACTORY_GIT_REPO_BRANCH}`));
|
|
135
|
-
await driverHelper.waitVisibility(webCheCodeLocators.ScmView.more);
|
|
136
|
-
Logger_1.Logger.debug(`scmProvider.openMoreActions`);
|
|
137
|
-
scmContextMenu = await scmProvider.openMoreActions();
|
|
138
|
-
await driverHelper.waitVisibility(webCheCodeLocators.ContextMenu.itemConstructor(pushItemLabel));
|
|
139
|
-
Logger_1.Logger.debug(`scmContextMenu.select: "${pushItemLabel}"`);
|
|
140
|
-
await scmContextMenu.select(pushItemLabel);
|
|
141
|
-
});
|
|
142
|
-
test('Check if the changes were pushed', async function () {
|
|
143
|
-
await driverHelper.waitVisibility(webCheCodeLocators.ScmView.more);
|
|
144
|
-
await driverHelper.wait(timeToRefresh);
|
|
145
|
-
Logger_1.Logger.debug(`scmProvider.takeAction: "${refreshButtonLabel}"`);
|
|
146
|
-
await scmProvider.takeAction(refreshButtonLabel);
|
|
147
|
-
const isCommitButtonDisabled = await driverHelper.waitAndGetElementAttribute(webCheCodeLocators.ScmView.actionConstructor(commitChangesButtonLabel), 'aria-disabled');
|
|
148
|
-
chai_1.expect(isCommitButtonDisabled).eql('true');
|
|
149
|
-
});
|
|
150
|
-
test(`Stop and remove the workspace`, async function () {
|
|
151
|
-
await workspaceHandlingTests.stopAndRemoveWorkspace(WorkspaceHandlingTests_1.WorkspaceHandlingTests.getWorkspaceName());
|
|
152
|
-
});
|
|
153
|
-
loginTests.logoutFromChe();
|
|
154
|
-
suiteTeardown('Close the browser', async function () {
|
|
155
|
-
if (!TestConstants_1.TestConstants.TS_DEBUG_MODE) {
|
|
156
|
-
await driverHelper.getDriver().close();
|
|
157
|
-
}
|
|
158
|
-
});
|
|
159
|
-
});
|
|
160
|
-
//# sourceMappingURL=Factory.spec.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"Factory.spec.js","sourceRoot":"","sources":["../../../specs/factory/Factory.spec.ts"],"names":[],"mappings":"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"}
|