@eclipse-che/che-e2e 7.121.0-next-e9dc673 → 7.121.0-next
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/index.ts +5 -5
- package/package.json +1 -1
- package/dist/configs/inversify.config.js +0 -121
- package/dist/configs/inversify.config.js.map +0 -1
- package/dist/configs/inversify.types.js +0 -73
- package/dist/configs/inversify.types.js.map +0 -1
- package/dist/configs/mocharc.js +0 -42
- package/dist/configs/mocharc.js.map +0 -1
- package/dist/constants/API_TEST_CONSTANTS.js +0 -60
- package/dist/constants/API_TEST_CONSTANTS.js.map +0 -1
- package/dist/constants/BASE_TEST_CONSTANTS.js +0 -109
- package/dist/constants/BASE_TEST_CONSTANTS.js.map +0 -1
- package/dist/constants/CHROME_DRIVER_CONSTANTS.js +0 -40
- package/dist/constants/CHROME_DRIVER_CONSTANTS.js.map +0 -1
- package/dist/constants/EDITOR_CONSTANTS.js +0 -114
- package/dist/constants/EDITOR_CONSTANTS.js.map +0 -1
- package/dist/constants/FACTORY_TEST_CONSTANTS.js +0 -87
- package/dist/constants/FACTORY_TEST_CONSTANTS.js.map +0 -1
- package/dist/constants/MOCHA_CONSTANTS.js +0 -24
- package/dist/constants/MOCHA_CONSTANTS.js.map +0 -1
- package/dist/constants/MONACO_CONSTANTS.js +0 -25
- package/dist/constants/MONACO_CONSTANTS.js.map +0 -1
- package/dist/constants/OAUTH_CONSTANTS.js +0 -53
- package/dist/constants/OAUTH_CONSTANTS.js.map +0 -1
- package/dist/constants/PLUGIN_TEST_CONSTANTS.js +0 -19
- package/dist/constants/PLUGIN_TEST_CONSTANTS.js.map +0 -1
- package/dist/constants/REPORTER_CONSTANTS.js +0 -123
- package/dist/constants/REPORTER_CONSTANTS.js.map +0 -1
- package/dist/constants/TIMEOUT_CONSTANTS.js +0 -101
- package/dist/constants/TIMEOUT_CONSTANTS.js.map +0 -1
- package/dist/driver/ChromeDriver.js +0 -77
- 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 -98
- package/dist/index.js.map +0 -1
- package/dist/pageobjects/dashboard/CreateWorkspace.js +0 -181
- package/dist/pageobjects/dashboard/CreateWorkspace.js.map +0 -1
- package/dist/pageobjects/dashboard/Dashboard.js +0 -208
- package/dist/pageobjects/dashboard/Dashboard.js.map +0 -1
- package/dist/pageobjects/dashboard/TrustAuthorPopup.js +0 -61
- package/dist/pageobjects/dashboard/TrustAuthorPopup.js.map +0 -1
- package/dist/pageobjects/dashboard/UserPreferences.js +0 -268
- package/dist/pageobjects/dashboard/UserPreferences.js.map +0 -1
- package/dist/pageobjects/dashboard/Workspaces.js +0 -242
- package/dist/pageobjects/dashboard/Workspaces.js.map +0 -1
- package/dist/pageobjects/dashboard/workspace-details/WorkspaceDetails.js +0 -186
- package/dist/pageobjects/dashboard/workspace-details/WorkspaceDetails.js.map +0 -1
- package/dist/pageobjects/git-providers/OauthPage.js +0 -218
- package/dist/pageobjects/git-providers/OauthPage.js.map +0 -1
- package/dist/pageobjects/ide/AiCodeSignInDialog.js +0 -55
- package/dist/pageobjects/ide/AiCodeSignInDialog.js.map +0 -1
- package/dist/pageobjects/ide/CheCodeLocatorLoader.js +0 -108
- package/dist/pageobjects/ide/CheCodeLocatorLoader.js.map +0 -1
- package/dist/pageobjects/ide/CommandPalette.js +0 -117
- package/dist/pageobjects/ide/CommandPalette.js.map +0 -1
- package/dist/pageobjects/ide/ExplorerView.js +0 -108
- package/dist/pageobjects/ide/ExplorerView.js.map +0 -1
- package/dist/pageobjects/ide/ExtensionsView.js +0 -162
- package/dist/pageobjects/ide/ExtensionsView.js.map +0 -1
- package/dist/pageobjects/ide/GitHubExtensionDialog.js +0 -66
- package/dist/pageobjects/ide/GitHubExtensionDialog.js.map +0 -1
- package/dist/pageobjects/ide/NotificationHandler.js +0 -83
- package/dist/pageobjects/ide/NotificationHandler.js.map +0 -1
- package/dist/pageobjects/ide/RestrictedModeButton.js +0 -57
- package/dist/pageobjects/ide/RestrictedModeButton.js.map +0 -1
- package/dist/pageobjects/ide/SourceControlView.js +0 -52
- package/dist/pageobjects/ide/SourceControlView.js.map +0 -1
- package/dist/pageobjects/ide/ViewsMoreActionsButton.js +0 -73
- package/dist/pageobjects/ide/ViewsMoreActionsButton.js.map +0 -1
- package/dist/pageobjects/login/interfaces/ICheLoginPage.js +0 -12
- package/dist/pageobjects/login/interfaces/ICheLoginPage.js.map +0 -1
- package/dist/pageobjects/login/interfaces/IOcpLoginPage.js +0 -12
- package/dist/pageobjects/login/interfaces/IOcpLoginPage.js.map +0 -1
- package/dist/pageobjects/login/kubernetes/DexLoginPage.js +0 -69
- package/dist/pageobjects/login/kubernetes/DexLoginPage.js.map +0 -1
- package/dist/pageobjects/login/kubernetes/KubernetesLoginPage.js +0 -50
- package/dist/pageobjects/login/kubernetes/KubernetesLoginPage.js.map +0 -1
- package/dist/pageobjects/login/openshift/OcpLoginPage.js +0 -88
- package/dist/pageobjects/login/openshift/OcpLoginPage.js.map +0 -1
- package/dist/pageobjects/login/openshift/OcpRedHatLoginPage.js +0 -73
- package/dist/pageobjects/login/openshift/OcpRedHatLoginPage.js.map +0 -1
- package/dist/pageobjects/login/openshift/OcpUserLoginPage.js +0 -53
- package/dist/pageobjects/login/openshift/OcpUserLoginPage.js.map +0 -1
- package/dist/pageobjects/login/openshift/RedHatLoginPage.js +0 -85
- package/dist/pageobjects/login/openshift/RedHatLoginPage.js.map +0 -1
- package/dist/pageobjects/login/openshift/RegularUserOcpCheLoginPage.js +0 -65
- package/dist/pageobjects/login/openshift/RegularUserOcpCheLoginPage.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 -92
- package/dist/pageobjects/openshift/OcpImportFromGitPage.js.map +0 -1
- package/dist/pageobjects/openshift/OcpMainPage.js +0 -140
- package/dist/pageobjects/openshift/OcpMainPage.js.map +0 -1
- package/dist/pageobjects/webterminal/WebTerminalPage.js +0 -182
- package/dist/pageobjects/webterminal/WebTerminalPage.js.map +0 -1
- package/dist/specs/MochaHooks.js +0 -142
- package/dist/specs/MochaHooks.js.map +0 -1
- package/dist/specs/SmokeTest.spec.js +0 -58
- package/dist/specs/SmokeTest.spec.js.map +0 -1
- package/dist/specs/api/AnsibleDevFileAPI.spec.js +0 -256
- package/dist/specs/api/AnsibleDevFileAPI.spec.js.map +0 -1
- package/dist/specs/api/BuildPushRunPodmanContainerAPI.spec.js +0 -147
- package/dist/specs/api/BuildPushRunPodmanContainerAPI.spec.js.map +0 -1
- package/dist/specs/api/ContainerOverridesAPI.spec.js +0 -40
- package/dist/specs/api/ContainerOverridesAPI.spec.js.map +0 -1
- package/dist/specs/api/CppDevFileAPI.spec.js +0 -87
- package/dist/specs/api/CppDevFileAPI.spec.js.map +0 -1
- package/dist/specs/api/DevfileAcceptanceTestAPI.spec.js +0 -99
- package/dist/specs/api/DevfileAcceptanceTestAPI.spec.js.map +0 -1
- package/dist/specs/api/DotnetDevFileAPI.spec.js +0 -89
- package/dist/specs/api/DotnetDevFileAPI.spec.js.map +0 -1
- package/dist/specs/api/EmptyWorkspaceAPI.spec.js +0 -60
- package/dist/specs/api/EmptyWorkspaceAPI.spec.js.map +0 -1
- package/dist/specs/api/GoDevFileAPI.spec.js +0 -82
- package/dist/specs/api/GoDevFileAPI.spec.js.map +0 -1
- package/dist/specs/api/InbuiltApplicationDevWorkspacesAPI.spec.js +0 -97
- package/dist/specs/api/InbuiltApplicationDevWorkspacesAPI.spec.js.map +0 -1
- package/dist/specs/api/JBossEapDevFileAPI.spec.js +0 -127
- package/dist/specs/api/JBossEapDevFileAPI.spec.js.map +0 -1
- package/dist/specs/api/LombokDevFileAPI.spec.js +0 -81
- package/dist/specs/api/LombokDevFileAPI.spec.js.map +0 -1
- package/dist/specs/api/NodeJSMongoDBDevFileAPI.spec.js +0 -81
- package/dist/specs/api/NodeJSMongoDBDevFileAPI.spec.js.map +0 -1
- package/dist/specs/api/NodeJsExpressDevFileAPI.spec.js +0 -130
- package/dist/specs/api/NodeJsExpressDevFileAPI.spec.js.map +0 -1
- package/dist/specs/api/PhpDevFileAPI.spec.js +0 -71
- package/dist/specs/api/PhpDevFileAPI.spec.js.map +0 -1
- package/dist/specs/api/PodOverridesAPI.spec.js +0 -46
- package/dist/specs/api/PodOverridesAPI.spec.js.map +0 -1
- package/dist/specs/api/PythonDevFileAPI.spec.js +0 -71
- package/dist/specs/api/PythonDevFileAPI.spec.js.map +0 -1
- package/dist/specs/api/QuarkusDevFileAPI.spec.js +0 -97
- package/dist/specs/api/QuarkusDevFileAPI.spec.js.map +0 -1
- package/dist/specs/dashboard-samples/Documentation.spec.js +0 -118
- package/dist/specs/dashboard-samples/Documentation.spec.js.map +0 -1
- package/dist/specs/dashboard-samples/EmptyWorkspace.spec.js +0 -60
- package/dist/specs/dashboard-samples/EmptyWorkspace.spec.js.map +0 -1
- package/dist/specs/dashboard-samples/Quarkus.spec.js +0 -64
- package/dist/specs/dashboard-samples/Quarkus.spec.js.map +0 -1
- package/dist/specs/dashboard-samples/RecommendedExtensions.spec.js +0 -345
- package/dist/specs/dashboard-samples/RecommendedExtensions.spec.js.map +0 -1
- package/dist/specs/dashboard-samples/StartWorkspaceUsingDesktopEditors.spec.js +0 -171
- package/dist/specs/dashboard-samples/StartWorkspaceUsingDesktopEditors.spec.js.map +0 -1
- package/dist/specs/devconsole-intergration/DevConsoleIntegration.spec.js +0 -155
- package/dist/specs/devconsole-intergration/DevConsoleIntegration.spec.js.map +0 -1
- package/dist/specs/factory/Factory.spec.js +0 -183
- package/dist/specs/factory/Factory.spec.js.map +0 -1
- package/dist/specs/factory/FactoryWithGitRepoOptions.spec.js +0 -63
- package/dist/specs/factory/FactoryWithGitRepoOptions.spec.js.map +0 -1
- package/dist/specs/factory/NoSetupRepoFactory.spec.js +0 -212
- package/dist/specs/factory/NoSetupRepoFactory.spec.js.map +0 -1
- package/dist/specs/factory/RefusedOAuthFactory.spec.js +0 -239
- package/dist/specs/factory/RefusedOAuthFactory.spec.js.map +0 -1
- package/dist/specs/factory/SshUrlNoOauthPatFactory.spec.js +0 -202
- package/dist/specs/factory/SshUrlNoOauthPatFactory.spec.js.map +0 -1
- package/dist/specs/miscellaneous/CreateWorkspaceWithExistedName.spec.js +0 -77
- package/dist/specs/miscellaneous/CreateWorkspaceWithExistedName.spec.js.map +0 -1
- package/dist/specs/miscellaneous/CreateWorkspaceWithExistingNameFromEmptyWorkspaceSample.spec.js +0 -106
- package/dist/specs/miscellaneous/CreateWorkspaceWithExistingNameFromEmptyWorkspaceSample.spec.js.map +0 -1
- package/dist/specs/miscellaneous/CreateWorkspaceWithExistingNameFromGitUrl.spec.js +0 -113
- package/dist/specs/miscellaneous/CreateWorkspaceWithExistingNameFromGitUrl.spec.js.map +0 -1
- package/dist/specs/miscellaneous/CreateWorkspaceWithExistingNameFromSample.spec.js +0 -116
- package/dist/specs/miscellaneous/CreateWorkspaceWithExistingNameFromSample.spec.js.map +0 -1
- package/dist/specs/miscellaneous/CustomOpenVSXRegistry.spec.js +0 -205
- package/dist/specs/miscellaneous/CustomOpenVSXRegistry.spec.js.map +0 -1
- package/dist/specs/miscellaneous/ExtensionActivationTest.spec.js +0 -129
- package/dist/specs/miscellaneous/ExtensionActivationTest.spec.js.map +0 -1
- package/dist/specs/miscellaneous/KubedockPodmanPersistUserHomeTest.spec.js +0 -121
- package/dist/specs/miscellaneous/KubedockPodmanPersistUserHomeTest.spec.js.map +0 -1
- package/dist/specs/miscellaneous/KubedockPodmanTest.spec.js +0 -103
- package/dist/specs/miscellaneous/KubedockPodmanTest.spec.js.map +0 -1
- package/dist/specs/miscellaneous/PredefinedNamespace.spec.js +0 -111
- package/dist/specs/miscellaneous/PredefinedNamespace.spec.js.map +0 -1
- package/dist/specs/miscellaneous/RenameWorkspace.spec.js +0 -116
- package/dist/specs/miscellaneous/RenameWorkspace.spec.js.map +0 -1
- package/dist/specs/miscellaneous/RevokeOauth.spec.js +0 -29
- package/dist/specs/miscellaneous/RevokeOauth.spec.js.map +0 -1
- package/dist/specs/miscellaneous/UserPreferencesTest.spec.js +0 -26
- package/dist/specs/miscellaneous/UserPreferencesTest.spec.js.map +0 -1
- package/dist/specs/miscellaneous/UserSecretsInWorkspace.spec.js +0 -78
- package/dist/specs/miscellaneous/UserSecretsInWorkspace.spec.js.map +0 -1
- package/dist/specs/miscellaneous/VsixInstallationDisableTest.spec.js +0 -196
- package/dist/specs/miscellaneous/VsixInstallationDisableTest.spec.js.map +0 -1
- package/dist/specs/miscellaneous/WorkspaceBackupRestore.spec.js +0 -208
- package/dist/specs/miscellaneous/WorkspaceBackupRestore.spec.js.map +0 -1
- package/dist/specs/miscellaneous/WorkspaceIdleTimeout.spec.js +0 -84
- package/dist/specs/miscellaneous/WorkspaceIdleTimeout.spec.js.map +0 -1
- package/dist/specs/miscellaneous/WorkspaceRunTimeout.spec.js +0 -84
- package/dist/specs/miscellaneous/WorkspaceRunTimeout.spec.js.map +0 -1
- package/dist/specs/miscellaneous/WorkspaceWithParent.spec.js +0 -101
- package/dist/specs/miscellaneous/WorkspaceWithParent.spec.js.map +0 -1
- package/dist/specs/web-terminal/WebTerminalTest.spec.js +0 -47
- package/dist/specs/web-terminal/WebTerminalTest.spec.js.map +0 -1
- package/dist/specs/web-terminal/WebTerminalUnderAdmin.spec.js +0 -82
- package/dist/specs/web-terminal/WebTerminalUnderAdmin.spec.js.map +0 -1
- package/dist/specs/web-terminal/WebTerminalUnderRegularUser.spec.js +0 -78
- package/dist/specs/web-terminal/WebTerminalUnderRegularUser.spec.js.map +0 -1
- package/dist/suites/devfile-acceptance-test-suite/DynamicallyGeneratingAPITest.suite.js +0 -13
- package/dist/suites/devfile-acceptance-test-suite/DynamicallyGeneratingAPITest.suite.js.map +0 -1
- package/dist/suites/disconnected-ocp/APITest.suite.js +0 -14
- package/dist/suites/disconnected-ocp/APITest.suite.js.map +0 -1
- package/dist/suites/disconnected-ocp/DynamicallyGeneratingAPITest.suite.js +0 -13
- package/dist/suites/disconnected-ocp/DynamicallyGeneratingAPITest.suite.js.map +0 -1
- package/dist/suites/disconnected-ocp/UITest.suite.js +0 -19
- package/dist/suites/disconnected-ocp/UITest.suite.js.map +0 -1
- package/dist/suites/online-ocp/APITest.suite.js +0 -15
- package/dist/suites/online-ocp/APITest.suite.js.map +0 -1
- package/dist/suites/online-ocp/DynamicallyGeneratingAPITest.suite.js +0 -13
- package/dist/suites/online-ocp/DynamicallyGeneratingAPITest.suite.js.map +0 -1
- package/dist/suites/online-ocp/UITest.suite.js +0 -23
- package/dist/suites/online-ocp/UITest.suite.js.map +0 -1
- package/dist/tests-library/LoginTests.js +0 -76
- package/dist/tests-library/LoginTests.js.map +0 -1
- package/dist/tests-library/ProjectAndFileTests.js +0 -230
- package/dist/tests-library/ProjectAndFileTests.js.map +0 -1
- package/dist/tests-library/WorkspaceHandlingTests.js +0 -219
- package/dist/tests-library/WorkspaceHandlingTests.js.map +0 -1
- package/dist/utils/BrowserTabsUtil.js +0 -124
- package/dist/utils/BrowserTabsUtil.js.map +0 -1
- package/dist/utils/CheReporter.js +0 -238
- package/dist/utils/CheReporter.js.map +0 -1
- package/dist/utils/DevWorkspaceConfigurationHelper.js +0 -145
- package/dist/utils/DevWorkspaceConfigurationHelper.js.map +0 -1
- package/dist/utils/DevfilesHelper.js +0 -177
- package/dist/utils/DevfilesHelper.js.map +0 -1
- package/dist/utils/DriverHelper.js +0 -609
- package/dist/utils/DriverHelper.js.map +0 -1
- package/dist/utils/IContextParams.js +0 -12
- package/dist/utils/IContextParams.js.map +0 -1
- package/dist/utils/IKubernetesCommandLineToolsExecutor.js +0 -3
- package/dist/utils/IKubernetesCommandLineToolsExecutor.js.map +0 -1
- package/dist/utils/KubernetesCommandLineToolsExecutor.js +0 -338
- package/dist/utils/KubernetesCommandLineToolsExecutor.js.map +0 -1
- package/dist/utils/Logger.js +0 -146
- package/dist/utils/Logger.js.map +0 -1
- package/dist/utils/ScreenCatcher.js +0 -114
- package/dist/utils/ScreenCatcher.js.map +0 -1
- package/dist/utils/ShellExecutor.js +0 -47
- package/dist/utils/ShellExecutor.js.map +0 -1
- package/dist/utils/StringUtil.js +0 -107
- package/dist/utils/StringUtil.js.map +0 -1
- package/dist/utils/request-handlers/CheApiRequestHandler.js +0 -128
- package/dist/utils/request-handlers/CheApiRequestHandler.js.map +0 -1
- package/dist/utils/request-handlers/headers/CheMultiuserAuthorizationHeaderHandler.js +0 -55
- 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/workspace/ApiUrlResolver.js +0 -117
- 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 -202
- 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,196 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
/** *******************************************************************
|
|
3
|
-
* copyright (c) 2025 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 __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
12
|
-
if (k2 === undefined) k2 = k;
|
|
13
|
-
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
14
|
-
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
15
|
-
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
16
|
-
}
|
|
17
|
-
Object.defineProperty(o, k2, desc);
|
|
18
|
-
}) : (function(o, m, k, k2) {
|
|
19
|
-
if (k2 === undefined) k2 = k;
|
|
20
|
-
o[k2] = m[k];
|
|
21
|
-
}));
|
|
22
|
-
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
23
|
-
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
24
|
-
}) : function(o, v) {
|
|
25
|
-
o["default"] = v;
|
|
26
|
-
});
|
|
27
|
-
var __importStar = (this && this.__importStar) || function (mod) {
|
|
28
|
-
if (mod && mod.__esModule) return mod;
|
|
29
|
-
var result = {};
|
|
30
|
-
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
31
|
-
__setModuleDefault(result, mod);
|
|
32
|
-
return result;
|
|
33
|
-
};
|
|
34
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
35
|
-
require("reflect-metadata");
|
|
36
|
-
const inversify_config_1 = require("../../configs/inversify.config");
|
|
37
|
-
const inversify_types_1 = require("../../configs/inversify.types");
|
|
38
|
-
const chai_1 = require("chai");
|
|
39
|
-
const fs = __importStar(require("fs"));
|
|
40
|
-
const path = __importStar(require("path"));
|
|
41
|
-
const WorkspaceHandlingTests_1 = require("../../tests-library/WorkspaceHandlingTests");
|
|
42
|
-
const MochaHooks_1 = require("../MochaHooks");
|
|
43
|
-
const BASE_TEST_CONSTANTS_1 = require("../../constants/BASE_TEST_CONSTANTS");
|
|
44
|
-
const Logger_1 = require("../../utils/Logger");
|
|
45
|
-
suite(`Verify VSIX installation can be disabled via configuration ${BASE_TEST_CONSTANTS_1.BASE_TEST_CONSTANTS.TEST_ENVIRONMENT}`, function () {
|
|
46
|
-
const workspaceHandlingTests = inversify_config_1.e2eContainer.get(inversify_types_1.CLASSES.WorkspaceHandlingTests);
|
|
47
|
-
const projectAndFileTests = inversify_config_1.e2eContainer.get(inversify_types_1.CLASSES.ProjectAndFileTests);
|
|
48
|
-
const loginTests = inversify_config_1.e2eContainer.get(inversify_types_1.CLASSES.LoginTests);
|
|
49
|
-
const kubernetesCommandLineToolsExecutor = inversify_config_1.e2eContainer.get(inversify_types_1.CLASSES.KubernetesCommandLineToolsExecutor);
|
|
50
|
-
const shellExecutor = inversify_config_1.e2eContainer.get(inversify_types_1.CLASSES.ShellExecutor);
|
|
51
|
-
const testWorkspaceUtil = inversify_config_1.e2eContainer.get(inversify_types_1.TYPES.WorkspaceUtil);
|
|
52
|
-
const dashboard = inversify_config_1.e2eContainer.get(inversify_types_1.CLASSES.Dashboard);
|
|
53
|
-
const driverHelper = inversify_config_1.e2eContainer.get(inversify_types_1.CLASSES.DriverHelper);
|
|
54
|
-
const browserTabsUtil = inversify_config_1.e2eContainer.get(inversify_types_1.CLASSES.BrowserTabsUtil);
|
|
55
|
-
const commandPalette = inversify_config_1.e2eContainer.get(inversify_types_1.CLASSES.CommandPalette);
|
|
56
|
-
const extensionsView = inversify_config_1.e2eContainer.get(inversify_types_1.CLASSES.ExtensionsView);
|
|
57
|
-
const explorerView = inversify_config_1.e2eContainer.get(inversify_types_1.CLASSES.ExplorerView);
|
|
58
|
-
const TEST_REPO_URL = 'https://github.com/crw-qe/web-nodejs-sample-with-disabled-vsix/tree/install-from-vsix-disabled-7-100';
|
|
59
|
-
const RESOURCES_PATH = path.join(__dirname, '../../../resources');
|
|
60
|
-
const DEFAULT_EXTENSIONS = ['YAML'];
|
|
61
|
-
const VSIX_FILE_NAME = 'redhat.vscode-yaml-1.17.0.vsix';
|
|
62
|
-
const CONFIG_MAP_NAMES = {
|
|
63
|
-
VSIX_CONFIG: 'vscode-editor-configurations',
|
|
64
|
-
DEFAULT_EXTENSIONS: 'default-extensions'
|
|
65
|
-
};
|
|
66
|
-
const CONFIG_MAP_NAMESPACES = {
|
|
67
|
-
VSIX_CONFIG: 'openshift-devspaces',
|
|
68
|
-
DEFAULT_EXTENSIONS: 'admin-devspaces'
|
|
69
|
-
};
|
|
70
|
-
const CONFIG_FILES = {
|
|
71
|
-
DISABLE_VSIX: 'configmap-disable-vsix-installation.yaml',
|
|
72
|
-
ENABLE_VSIX: 'configmap-enable-vsix-installation.yaml',
|
|
73
|
-
DEFAULT_EXTENSIONS: 'default-extensions-configmap.yaml'
|
|
74
|
-
};
|
|
75
|
-
let workspaceName = '';
|
|
76
|
-
function applyConfigMap(configFileName) {
|
|
77
|
-
const configPath = path.join(RESOURCES_PATH, configFileName);
|
|
78
|
-
const configContent = fs.readFileSync(configPath, 'utf8');
|
|
79
|
-
shellExecutor.executeCommand(`oc apply -f - <<EOF\n${configContent}\nEOF`);
|
|
80
|
-
}
|
|
81
|
-
function cleanupConfigMaps() {
|
|
82
|
-
Logger_1.Logger.debug(`Deleting ConfigMap ${CONFIG_MAP_NAMES.VSIX_CONFIG} from namespace ${CONFIG_MAP_NAMESPACES.VSIX_CONFIG}`);
|
|
83
|
-
shellExecutor.executeCommand(`oc delete configmap ${CONFIG_MAP_NAMES.VSIX_CONFIG} -n ${CONFIG_MAP_NAMESPACES.VSIX_CONFIG} --ignore-not-found=true`);
|
|
84
|
-
Logger_1.Logger.debug(`Deleting ConfigMap ${CONFIG_MAP_NAMES.DEFAULT_EXTENSIONS} from namespace ${CONFIG_MAP_NAMESPACES.DEFAULT_EXTENSIONS}`);
|
|
85
|
-
shellExecutor.executeCommand(`oc delete configmap ${CONFIG_MAP_NAMES.DEFAULT_EXTENSIONS} -n ${CONFIG_MAP_NAMESPACES.DEFAULT_EXTENSIONS} --ignore-not-found=true`);
|
|
86
|
-
}
|
|
87
|
-
// ========== Test Execution ==========
|
|
88
|
-
suiteSetup('Login to cluster and setup initial state', function () {
|
|
89
|
-
kubernetesCommandLineToolsExecutor.loginToOcp();
|
|
90
|
-
cleanupConfigMaps();
|
|
91
|
-
});
|
|
92
|
-
suiteSetup('Login to application', async function () {
|
|
93
|
-
await loginTests.loginIntoChe();
|
|
94
|
-
});
|
|
95
|
-
test('Apply ConfigMaps that disable VSIX and set default extensions', function () {
|
|
96
|
-
applyConfigMap(CONFIG_FILES.DISABLE_VSIX);
|
|
97
|
-
applyConfigMap(CONFIG_FILES.DEFAULT_EXTENSIONS);
|
|
98
|
-
});
|
|
99
|
-
test('Create and open workspace from Git repository', async function () {
|
|
100
|
-
await workspaceHandlingTests.createAndOpenWorkspaceFromGitRepository(TEST_REPO_URL);
|
|
101
|
-
await workspaceHandlingTests.obtainWorkspaceNameFromStartingPage();
|
|
102
|
-
workspaceName = WorkspaceHandlingTests_1.WorkspaceHandlingTests.getWorkspaceName();
|
|
103
|
-
(0, MochaHooks_1.registerRunningWorkspace)(workspaceName);
|
|
104
|
-
});
|
|
105
|
-
test('Wait workspace readiness', async function () {
|
|
106
|
-
await projectAndFileTests.waitWorkspaceReadinessForCheCodeEditor();
|
|
107
|
-
});
|
|
108
|
-
test('Perform trust author dialog', async function () {
|
|
109
|
-
await projectAndFileTests.performTrustAuthorDialog();
|
|
110
|
-
});
|
|
111
|
-
test('Verify VSIX installation is disabled in UI and extensions are not installed', async function () {
|
|
112
|
-
// check Command Palette
|
|
113
|
-
await commandPalette.openCommandPalette();
|
|
114
|
-
await commandPalette.searchCommand('Install from VSIX');
|
|
115
|
-
const commandAvailable = await commandPalette.isCommandVisible('Extensions: Install from VSIX...');
|
|
116
|
-
await commandPalette.closeCommandPalette();
|
|
117
|
-
(0, chai_1.expect)(commandAvailable).to.equal(false, 'Command Palette should not contain Install from VSIX command');
|
|
118
|
-
// check Extensions view menu
|
|
119
|
-
await extensionsView.openExtensionsView();
|
|
120
|
-
await extensionsView.openMoreActionsMenu();
|
|
121
|
-
const extensionMenuAvailable = await extensionsView.isMoreActionsMenuItemVisible('Install from VSIX');
|
|
122
|
-
await extensionsView.closeMoreActionsMenu();
|
|
123
|
-
(0, chai_1.expect)(extensionMenuAvailable).to.equal(false, 'Extensions view should not contain Install from VSIX action');
|
|
124
|
-
// check Explorer context menu
|
|
125
|
-
await explorerView.openFileContextMenu(VSIX_FILE_NAME);
|
|
126
|
-
const contextMenuAvailable = await explorerView.isContextMenuItemVisible('Install Extension VSIX');
|
|
127
|
-
await explorerView.closeContextMenu();
|
|
128
|
-
(0, chai_1.expect)(contextMenuAvailable).to.equal(false, 'Explorer context menu should not contain Install Extension VSIX action');
|
|
129
|
-
// verify default extensions are not auto-installed
|
|
130
|
-
await extensionsView.openExtensionsView();
|
|
131
|
-
const installedExtensions = await extensionsView.getInstalledExtensionNames();
|
|
132
|
-
Logger_1.Logger.debug(`Found installed extensions: ${installedExtensions.join(', ')}`);
|
|
133
|
-
for (const extensionName of DEFAULT_EXTENSIONS) {
|
|
134
|
-
const isInstalled = installedExtensions.some((installed) => installed.toLowerCase().includes(extensionName.toLowerCase()));
|
|
135
|
-
(0, chai_1.expect)(isInstalled).to.equal(true, `Default VSIX extension "${extensionName}" should be auto-installed`);
|
|
136
|
-
}
|
|
137
|
-
});
|
|
138
|
-
test('Enable VSIX installation and create new workspace', async function () {
|
|
139
|
-
// clean up current workspace
|
|
140
|
-
await dashboard.openDashboard();
|
|
141
|
-
await testWorkspaceUtil.deleteWorkspaceByName(workspaceName);
|
|
142
|
-
(0, MochaHooks_1.registerRunningWorkspace)('');
|
|
143
|
-
// apply ConfigMaps that enable VSIX and set default extensions
|
|
144
|
-
applyConfigMap(CONFIG_FILES.ENABLE_VSIX);
|
|
145
|
-
applyConfigMap(CONFIG_FILES.DEFAULT_EXTENSIONS);
|
|
146
|
-
Logger_1.Logger.info('Waiting for new ConfigMap settings to take effect...');
|
|
147
|
-
await driverHelper.wait(30000);
|
|
148
|
-
// create new workspace
|
|
149
|
-
await workspaceHandlingTests.createAndOpenWorkspaceFromGitRepository(TEST_REPO_URL);
|
|
150
|
-
await workspaceHandlingTests.obtainWorkspaceNameFromStartingPage();
|
|
151
|
-
workspaceName = WorkspaceHandlingTests_1.WorkspaceHandlingTests.getWorkspaceName();
|
|
152
|
-
(0, MochaHooks_1.registerRunningWorkspace)(workspaceName);
|
|
153
|
-
});
|
|
154
|
-
test('Wait workspace readiness', async function () {
|
|
155
|
-
await projectAndFileTests.waitWorkspaceReadinessForCheCodeEditor();
|
|
156
|
-
});
|
|
157
|
-
test('Perform trust author dialog', async function () {
|
|
158
|
-
await projectAndFileTests.performTrustAuthorDialog();
|
|
159
|
-
});
|
|
160
|
-
test('Verify VSIX installation is enabled in UI and extensions are installed', async function () {
|
|
161
|
-
// check Command Palette
|
|
162
|
-
await commandPalette.openCommandPalette();
|
|
163
|
-
await commandPalette.searchCommand('Install from VSIX');
|
|
164
|
-
const commandAvailable = await commandPalette.isCommandVisible('Extensions: Install from VSIX...');
|
|
165
|
-
await commandPalette.closeCommandPalette();
|
|
166
|
-
(0, chai_1.expect)(commandAvailable).to.equal(true, 'Command Palette should contain Install from VSIX command');
|
|
167
|
-
// check Extensions view menu
|
|
168
|
-
await extensionsView.openExtensionsView();
|
|
169
|
-
await extensionsView.openMoreActionsMenu();
|
|
170
|
-
const extensionMenuAvailable = await extensionsView.isMoreActionsMenuItemVisible('Install from VSIX');
|
|
171
|
-
await extensionsView.closeMoreActionsMenu();
|
|
172
|
-
(0, chai_1.expect)(extensionMenuAvailable).to.equal(true, 'Extensions view should contain Install from VSIX action');
|
|
173
|
-
// check Explorer context menu
|
|
174
|
-
await explorerView.openFileContextMenu(VSIX_FILE_NAME);
|
|
175
|
-
const contextMenuAvailable = await explorerView.isContextMenuItemVisible('Install Extension VSIX');
|
|
176
|
-
await explorerView.closeContextMenu();
|
|
177
|
-
(0, chai_1.expect)(contextMenuAvailable).to.equal(true, 'Explorer context menu should contain Install Extension VSIX action');
|
|
178
|
-
// verify default extensions are auto-installed when VSIX enabled
|
|
179
|
-
await extensionsView.openExtensionsView();
|
|
180
|
-
const installedExtensions = await extensionsView.getInstalledExtensionNames();
|
|
181
|
-
Logger_1.Logger.debug(`Found installed extensions: ${installedExtensions.join(', ')}`);
|
|
182
|
-
for (const extensionName of DEFAULT_EXTENSIONS) {
|
|
183
|
-
const isInstalled = installedExtensions.some((installed) => installed.toLowerCase().includes(extensionName.toLowerCase()));
|
|
184
|
-
(0, chai_1.expect)(isInstalled).to.equal(true, `Default VSIX extension "${extensionName}" should be auto-installed`);
|
|
185
|
-
}
|
|
186
|
-
});
|
|
187
|
-
suiteTeardown('Clean up ConfigMaps and workspace', async function () {
|
|
188
|
-
cleanupConfigMaps();
|
|
189
|
-
await dashboard.openDashboard();
|
|
190
|
-
await browserTabsUtil.closeAllTabsExceptCurrent();
|
|
191
|
-
await testWorkspaceUtil.stopAndDeleteWorkspaceByName(workspaceName);
|
|
192
|
-
(0, MochaHooks_1.registerRunningWorkspace)('');
|
|
193
|
-
Logger_1.Logger.info('Cleanup completed');
|
|
194
|
-
});
|
|
195
|
-
});
|
|
196
|
-
//# sourceMappingURL=VsixInstallationDisableTest.spec.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"VsixInstallationDisableTest.spec.js","sourceRoot":"","sources":["../../../specs/miscellaneous/VsixInstallationDisableTest.spec.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,208 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
/** *******************************************************************
|
|
4
|
-
* copyright (c) 2026 Red Hat, Inc.
|
|
5
|
-
*
|
|
6
|
-
* This program and the accompanying materials are made
|
|
7
|
-
* available under the terms of the Eclipse Public License 2.0
|
|
8
|
-
* which is available at https://www.eclipse.org/legal/epl-2.0/
|
|
9
|
-
*
|
|
10
|
-
* SPDX-License-Identifier: EPL-2.0
|
|
11
|
-
**********************************************************************/
|
|
12
|
-
const inversify_config_1 = require("../../configs/inversify.config");
|
|
13
|
-
const inversify_types_1 = require("../../configs/inversify.types");
|
|
14
|
-
const chai_1 = require("chai");
|
|
15
|
-
const WorkspaceHandlingTests_1 = require("../../tests-library/WorkspaceHandlingTests");
|
|
16
|
-
const MochaHooks_1 = require("../MochaHooks");
|
|
17
|
-
const BASE_TEST_CONSTANTS_1 = require("../../constants/BASE_TEST_CONSTANTS");
|
|
18
|
-
const FACTORY_TEST_CONSTANTS_1 = require("../../constants/FACTORY_TEST_CONSTANTS");
|
|
19
|
-
const Logger_1 = require("../../utils/Logger");
|
|
20
|
-
const StringUtil_1 = require("../../utils/StringUtil");
|
|
21
|
-
const TIMEOUT_CONSTANTS_1 = require("../../constants/TIMEOUT_CONSTANTS");
|
|
22
|
-
const factoryUrl = FACTORY_TEST_CONSTANTS_1.FACTORY_TEST_CONSTANTS.TS_SELENIUM_FACTORY_GIT_REPO_URL || 'https://gh.crw-qe.com/test-automation-only/python-hello-world.git';
|
|
23
|
-
const testFileName = 'backup-test.txt';
|
|
24
|
-
const testFileContent = 'This is a test file for backup verification';
|
|
25
|
-
suite(`"Restore workspace from backup" test ${BASE_TEST_CONSTANTS_1.BASE_TEST_CONSTANTS.TEST_ENVIRONMENT}`, function () {
|
|
26
|
-
const workspaceHandlingTests = inversify_config_1.e2eContainer.get(inversify_types_1.CLASSES.WorkspaceHandlingTests);
|
|
27
|
-
const projectAndFileTests = inversify_config_1.e2eContainer.get(inversify_types_1.CLASSES.ProjectAndFileTests);
|
|
28
|
-
const loginTests = inversify_config_1.e2eContainer.get(inversify_types_1.CLASSES.LoginTests);
|
|
29
|
-
const browserTabsUtil = inversify_config_1.e2eContainer.get(inversify_types_1.CLASSES.BrowserTabsUtil);
|
|
30
|
-
const dashboard = inversify_config_1.e2eContainer.get(inversify_types_1.CLASSES.Dashboard);
|
|
31
|
-
const workspaces = inversify_config_1.e2eContainer.get(inversify_types_1.CLASSES.Workspaces);
|
|
32
|
-
const testWorkspaceUtil = inversify_config_1.e2eContainer.get(inversify_types_1.TYPES.WorkspaceUtil);
|
|
33
|
-
const workspaceDetails = inversify_config_1.e2eContainer.get(inversify_types_1.CLASSES.WorkspaceDetails);
|
|
34
|
-
const kubernetesCommandLineToolsExecutor = inversify_config_1.e2eContainer.get(inversify_types_1.CLASSES.KubernetesCommandLineToolsExecutor);
|
|
35
|
-
const containerTerminal = inversify_config_1.e2eContainer.get(inversify_types_1.CLASSES.ContainerTerminal);
|
|
36
|
-
const workspaceName2 = 'test-workspace-2';
|
|
37
|
-
let projectSection;
|
|
38
|
-
let workspaceName;
|
|
39
|
-
let backupImageUrl;
|
|
40
|
-
let projectName;
|
|
41
|
-
async function openWorkspaceDetailsBackup(workspaceName) {
|
|
42
|
-
await workspaces.clickWorkspaceListItemLink(workspaceName);
|
|
43
|
-
await workspaceDetails.waitWorkspaceTitle(workspaceName);
|
|
44
|
-
await workspaceDetails.waitLoaderDisappearance();
|
|
45
|
-
await workspaceDetails.selectTab('Backup');
|
|
46
|
-
}
|
|
47
|
-
suiteSetup('Login', async function () {
|
|
48
|
-
await loginTests.loginIntoChe();
|
|
49
|
-
});
|
|
50
|
-
test(`Create and open new workspace from factory:${factoryUrl}`, async function () {
|
|
51
|
-
await workspaceHandlingTests.createAndOpenWorkspaceFromGitRepository(factoryUrl);
|
|
52
|
-
await workspaceHandlingTests.obtainWorkspaceNameFromStartingPage();
|
|
53
|
-
(0, MochaHooks_1.registerRunningWorkspace)(WorkspaceHandlingTests_1.WorkspaceHandlingTests.getWorkspaceName());
|
|
54
|
-
});
|
|
55
|
-
test('Wait workspace readiness and project folder has been created', async function () {
|
|
56
|
-
await projectAndFileTests.waitWorkspaceReadinessForCheCodeEditor();
|
|
57
|
-
});
|
|
58
|
-
test('Check a project folder has been created', async function () {
|
|
59
|
-
projectName = FACTORY_TEST_CONSTANTS_1.FACTORY_TEST_CONSTANTS.TS_SELENIUM_PROJECT_NAME || StringUtil_1.StringUtil.getProjectNameFromGitUrl(factoryUrl);
|
|
60
|
-
projectSection = await projectAndFileTests.getProjectViewSession();
|
|
61
|
-
(0, chai_1.expect)(await projectAndFileTests.getProjectTreeItem(projectSection, projectName), 'Project folder was not imported').not.undefined;
|
|
62
|
-
await projectAndFileTests.performTrustDialogs();
|
|
63
|
-
});
|
|
64
|
-
test('Setup workspace context for API operations', function () {
|
|
65
|
-
workspaceName = WorkspaceHandlingTests_1.WorkspaceHandlingTests.getWorkspaceName();
|
|
66
|
-
kubernetesCommandLineToolsExecutor.workspaceName = workspaceName;
|
|
67
|
-
kubernetesCommandLineToolsExecutor.loginToOcp();
|
|
68
|
-
kubernetesCommandLineToolsExecutor.getPodAndContainerNames();
|
|
69
|
-
});
|
|
70
|
-
test('Create test file via API', function () {
|
|
71
|
-
Logger_1.Logger.debug(`Creating test file: /projects/${projectName}/${testFileName}`);
|
|
72
|
-
const createFileCommand = `echo "${testFileContent}" > /projects/${projectName}/${testFileName}`;
|
|
73
|
-
const output = containerTerminal.execInContainerCommand(createFileCommand);
|
|
74
|
-
Logger_1.Logger.debug(`File creation output: ${output.stdout}`);
|
|
75
|
-
(0, chai_1.expect)(output.code).to.equal(0);
|
|
76
|
-
});
|
|
77
|
-
test('Verify test file content via API', function () {
|
|
78
|
-
Logger_1.Logger.debug(`Verifying test file content: /projects/${projectName}/${testFileName}`);
|
|
79
|
-
const readFileCommand = `cat /projects/${projectName}/${testFileName}`;
|
|
80
|
-
const output = containerTerminal.execInContainerCommand(readFileCommand);
|
|
81
|
-
Logger_1.Logger.debug(`File content: ${output.stdout}`);
|
|
82
|
-
(0, chai_1.expect)(output.stdout.trim()).to.equal(testFileContent);
|
|
83
|
-
});
|
|
84
|
-
test('Stop the workspace', async function () {
|
|
85
|
-
(0, chai_1.expect)(workspaceName, 'Workspace name not available').not.empty;
|
|
86
|
-
await dashboard.openDashboard();
|
|
87
|
-
await dashboard.waitPage();
|
|
88
|
-
await dashboard.stopWorkspaceByUI(workspaceName);
|
|
89
|
-
await browserTabsUtil.closeAllTabsExceptCurrent();
|
|
90
|
-
await workspaces.waitWorkspaceWithStoppedStatus(workspaceName);
|
|
91
|
-
await workspaces.waitBackupStatus(workspaceName, 'Never');
|
|
92
|
-
});
|
|
93
|
-
test('Wait for backup completion', async function () {
|
|
94
|
-
await workspaces.waitWorkspaceListItem(workspaceName);
|
|
95
|
-
await workspaces.waitBackupStatus(workspaceName, 'Success');
|
|
96
|
-
});
|
|
97
|
-
test('Get backup image URL', async function () {
|
|
98
|
-
await openWorkspaceDetailsBackup(workspaceName);
|
|
99
|
-
backupImageUrl = await workspaces.getBackupImageUrlValue();
|
|
100
|
-
Logger_1.Logger.info(`Retrieved backup image URL: ${backupImageUrl}`);
|
|
101
|
-
});
|
|
102
|
-
test('Delete the workspace', async function () {
|
|
103
|
-
await dashboard.deleteStoppedWorkspaceByUI(workspaceName);
|
|
104
|
-
});
|
|
105
|
-
test('Open backups page', async function () {
|
|
106
|
-
await workspaces.openBackupsPage();
|
|
107
|
-
await workspaces.waitWorkspaceListItem(workspaceName);
|
|
108
|
-
await workspaces.waitBackupStatus(workspaceName, 'Success');
|
|
109
|
-
});
|
|
110
|
-
test('Restore workspace from default registry', async function () {
|
|
111
|
-
const parentGUID = await browserTabsUtil.getCurrentWindowHandle();
|
|
112
|
-
await workspaces.clickCreateFromBackupButton(workspaceName);
|
|
113
|
-
await workspaces.restoreWorkspaceFromDefaultRegistry();
|
|
114
|
-
await browserTabsUtil.waitAndSwitchToAnotherWindow(parentGUID, TIMEOUT_CONSTANTS_1.TIMEOUT_CONSTANTS.TS_IDE_LOAD_TIMEOUT);
|
|
115
|
-
});
|
|
116
|
-
test('Obtain workspace name after restore', async function () {
|
|
117
|
-
await workspaceHandlingTests.obtainWorkspaceNameFromStartingPage();
|
|
118
|
-
const obtainedName = WorkspaceHandlingTests_1.WorkspaceHandlingTests.getWorkspaceName();
|
|
119
|
-
Logger_1.Logger.info(`Obtained workspace name after first restore: '${obtainedName}'`);
|
|
120
|
-
});
|
|
121
|
-
test('Register restored workspace', function () {
|
|
122
|
-
(0, MochaHooks_1.registerRunningWorkspace)(WorkspaceHandlingTests_1.WorkspaceHandlingTests.getWorkspaceName());
|
|
123
|
-
});
|
|
124
|
-
test('Wait workspace readiness after restore', async function () {
|
|
125
|
-
await projectAndFileTests.waitWorkspaceReadinessForCheCodeEditor();
|
|
126
|
-
await projectAndFileTests.performTrustDialogs();
|
|
127
|
-
projectSection = await projectAndFileTests.getProjectViewSession();
|
|
128
|
-
});
|
|
129
|
-
test('Setup workspace context for API operations after restore', function () {
|
|
130
|
-
workspaceName = WorkspaceHandlingTests_1.WorkspaceHandlingTests.getWorkspaceName();
|
|
131
|
-
Logger_1.Logger.info(`Workspace name for API setup after first restore: '${workspaceName}'`);
|
|
132
|
-
(0, chai_1.expect)(workspaceName, 'Workspace name should not be empty after restore').not.empty;
|
|
133
|
-
kubernetesCommandLineToolsExecutor.workspaceName = workspaceName;
|
|
134
|
-
kubernetesCommandLineToolsExecutor.loginToOcp();
|
|
135
|
-
kubernetesCommandLineToolsExecutor.getPodAndContainerNames();
|
|
136
|
-
});
|
|
137
|
-
test('Verify project folder exists after restore', async function () {
|
|
138
|
-
await projectAndFileTests.expandProjectTreeItem(projectSection, projectName);
|
|
139
|
-
(0, chai_1.expect)(await projectAndFileTests.getProjectTreeItem(projectSection, projectName), 'Project folder was not restored').not.undefined;
|
|
140
|
-
});
|
|
141
|
-
test('Verify test file content is intact after restore via API', function () {
|
|
142
|
-
Logger_1.Logger.debug(`Verifying restored file content: /projects/${projectName}/${testFileName}`);
|
|
143
|
-
const readFileCommand = `cat /projects/${projectName}/${testFileName}`;
|
|
144
|
-
const output = containerTerminal.execInContainerCommand(readFileCommand);
|
|
145
|
-
Logger_1.Logger.debug(`Restored file content: ${output.stdout}`);
|
|
146
|
-
(0, chai_1.expect)(output.stdout.trim()).to.equal(testFileContent);
|
|
147
|
-
});
|
|
148
|
-
test('Delete the workspace', async function () {
|
|
149
|
-
await dashboard.openDashboard();
|
|
150
|
-
await dashboard.waitPage();
|
|
151
|
-
await dashboard.deleteStoppedWorkspaceByUI(workspaceName);
|
|
152
|
-
await browserTabsUtil.closeAllTabsExceptCurrent();
|
|
153
|
-
});
|
|
154
|
-
test('Open backups page', async function () {
|
|
155
|
-
await workspaces.openBackupsPage();
|
|
156
|
-
await workspaces.waitWorkspaceListItem(workspaceName);
|
|
157
|
-
await workspaces.waitBackupStatus(workspaceName, 'Success');
|
|
158
|
-
});
|
|
159
|
-
test('Restore workspace from backup image URL ', async function () {
|
|
160
|
-
const parentGUID = await browserTabsUtil.getCurrentWindowHandle();
|
|
161
|
-
await workspaces.clickCreateFromBackupButton(workspaceName);
|
|
162
|
-
await workspaces.restoreWorkspaceFromExternalRegistry(backupImageUrl, workspaceName2);
|
|
163
|
-
await browserTabsUtil.waitAndSwitchToAnotherWindow(parentGUID, TIMEOUT_CONSTANTS_1.TIMEOUT_CONSTANTS.TS_IDE_LOAD_TIMEOUT);
|
|
164
|
-
});
|
|
165
|
-
test('Obtain workspace name after second restore', async function () {
|
|
166
|
-
await workspaceHandlingTests.obtainWorkspaceNameFromStartingPage();
|
|
167
|
-
const obtainedName = WorkspaceHandlingTests_1.WorkspaceHandlingTests.getWorkspaceName();
|
|
168
|
-
Logger_1.Logger.info(`Obtained workspace name after second restore: '${obtainedName}'`);
|
|
169
|
-
});
|
|
170
|
-
test('Register second restored workspace', function () {
|
|
171
|
-
(0, MochaHooks_1.registerRunningWorkspace)(WorkspaceHandlingTests_1.WorkspaceHandlingTests.getWorkspaceName());
|
|
172
|
-
});
|
|
173
|
-
test('Wait workspace readiness after second restore', async function () {
|
|
174
|
-
await projectAndFileTests.waitWorkspaceReadinessForCheCodeEditor();
|
|
175
|
-
await projectAndFileTests.performTrustDialogs();
|
|
176
|
-
projectSection = await projectAndFileTests.getProjectViewSession();
|
|
177
|
-
});
|
|
178
|
-
test('Setup workspace context for API operations after second restore', function () {
|
|
179
|
-
workspaceName = WorkspaceHandlingTests_1.WorkspaceHandlingTests.getWorkspaceName();
|
|
180
|
-
Logger_1.Logger.info(`Workspace name for API setup after second restore: '${workspaceName}'`);
|
|
181
|
-
(0, chai_1.expect)(workspaceName, 'Workspace name should not be empty after second restore').not.empty;
|
|
182
|
-
kubernetesCommandLineToolsExecutor.workspaceName = workspaceName;
|
|
183
|
-
kubernetesCommandLineToolsExecutor.loginToOcp();
|
|
184
|
-
kubernetesCommandLineToolsExecutor.getPodAndContainerNames();
|
|
185
|
-
});
|
|
186
|
-
test('Verify project folder exists after second restore', async function () {
|
|
187
|
-
await projectAndFileTests.expandProjectTreeItem(projectSection, projectName);
|
|
188
|
-
(0, chai_1.expect)(await projectAndFileTests.getProjectTreeItem(projectSection, projectName), 'Project folder was not restored').not.undefined;
|
|
189
|
-
});
|
|
190
|
-
test('Verify test file content is intact after second restore via API', function () {
|
|
191
|
-
Logger_1.Logger.debug(`Verifying restored file content: /projects/${projectName}/${testFileName}`);
|
|
192
|
-
const readFileCommand = `cat /projects/${projectName}/${testFileName}`;
|
|
193
|
-
const output = containerTerminal.execInContainerCommand(readFileCommand);
|
|
194
|
-
Logger_1.Logger.debug(`Restored file content: ${output.stdout}`);
|
|
195
|
-
(0, chai_1.expect)(output.stdout.trim()).to.equal(testFileContent);
|
|
196
|
-
});
|
|
197
|
-
suiteTeardown('Open dashboard and close all other tabs', async function () {
|
|
198
|
-
await dashboard.openDashboard();
|
|
199
|
-
await browserTabsUtil.closeAllTabsExceptCurrent();
|
|
200
|
-
});
|
|
201
|
-
suiteTeardown('Stop and delete workspace by API', async function () {
|
|
202
|
-
await testWorkspaceUtil.stopAndDeleteWorkspaceByName(workspaceName);
|
|
203
|
-
});
|
|
204
|
-
suiteTeardown('Unregister running workspace', function () {
|
|
205
|
-
(0, MochaHooks_1.registerRunningWorkspace)('');
|
|
206
|
-
});
|
|
207
|
-
});
|
|
208
|
-
//# sourceMappingURL=WorkspaceBackupRestore.spec.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"WorkspaceBackupRestore.spec.js","sourceRoot":"","sources":["../../../specs/miscellaneous/WorkspaceBackupRestore.spec.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,84 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
/** *******************************************************************
|
|
4
|
-
* copyright (c) 2020-2023 Red Hat, Inc.
|
|
5
|
-
*
|
|
6
|
-
* This program and the accompanying materials are made
|
|
7
|
-
* available under the terms of the Eclipse Public License 2.0
|
|
8
|
-
* which is available at https://www.eclipse.org/legal/epl-2.0/
|
|
9
|
-
*
|
|
10
|
-
* SPDX-License-Identifier: EPL-2.0
|
|
11
|
-
**********************************************************************/
|
|
12
|
-
const inversify_config_1 = require("../../configs/inversify.config");
|
|
13
|
-
const inversify_types_1 = require("../../configs/inversify.types");
|
|
14
|
-
const WorkspaceHandlingTests_1 = require("../../tests-library/WorkspaceHandlingTests");
|
|
15
|
-
const MochaHooks_1 = require("../MochaHooks");
|
|
16
|
-
const monaco_page_objects_1 = require("monaco-page-objects");
|
|
17
|
-
const chai_1 = require("chai");
|
|
18
|
-
suite('"Check workspace idle timeout" test', function () {
|
|
19
|
-
const workspaceHandlingTests = inversify_config_1.e2eContainer.get(inversify_types_1.CLASSES.WorkspaceHandlingTests);
|
|
20
|
-
const projectAndFileTests = inversify_config_1.e2eContainer.get(inversify_types_1.CLASSES.ProjectAndFileTests);
|
|
21
|
-
const loginTests = inversify_config_1.e2eContainer.get(inversify_types_1.CLASSES.LoginTests);
|
|
22
|
-
const dashboard = inversify_config_1.e2eContainer.get(inversify_types_1.CLASSES.Dashboard);
|
|
23
|
-
const workspaces = inversify_config_1.e2eContainer.get(inversify_types_1.CLASSES.Workspaces);
|
|
24
|
-
const driverHelper = inversify_config_1.e2eContainer.get(inversify_types_1.CLASSES.DriverHelper);
|
|
25
|
-
const cheCodeLocatorLoader = inversify_config_1.e2eContainer.get(inversify_types_1.CLASSES.CheCodeLocatorLoader);
|
|
26
|
-
const webCheCodeLocators = cheCodeLocatorLoader.webCheCodeLocators;
|
|
27
|
-
const kubernetesCommandLineToolsExecutor = inversify_config_1.e2eContainer.get(inversify_types_1.CLASSES.KubernetesCommandLineToolsExecutor);
|
|
28
|
-
const shellExecutor = inversify_config_1.e2eContainer.get(inversify_types_1.CLASSES.ShellExecutor);
|
|
29
|
-
const testWorkspaceUtil = inversify_config_1.e2eContainer.get(inversify_types_1.TYPES.WorkspaceUtil);
|
|
30
|
-
const SECONDS_OF_INACTIVITY_BEFORE_IDLING = Number(process.env.TS_SELENIUM_SECONDS_OF_INACTIVITY_BEFORE_IDLING) || 60;
|
|
31
|
-
const stackName = 'Empty Workspace';
|
|
32
|
-
const cheClusterName = 'devspaces';
|
|
33
|
-
let defaultIdleTimeoutValue = 0;
|
|
34
|
-
async function checkDialogButton(buttonName) {
|
|
35
|
-
await driverHelper.waitVisibility(monaco_page_objects_1.By.xpath(`//div[@class='dialog-buttons']//a[text()='${buttonName}']`));
|
|
36
|
-
}
|
|
37
|
-
suiteSetup(function () {
|
|
38
|
-
kubernetesCommandLineToolsExecutor.loginToOcp();
|
|
39
|
-
shellExecutor.executeCommand('oc project openshift-devspaces');
|
|
40
|
-
// get current value of spec.devEnvironments.secondsOfInactivityBeforeIdling
|
|
41
|
-
defaultIdleTimeoutValue = Number(shellExecutor.executeCommand(`oc get checluster/${cheClusterName} -o "jsonpath={.spec.devEnvironments.secondsOfInactivityBeforeIdling}"`));
|
|
42
|
-
// set spec.devEnvironments.secondsOfInactivityBeforeIdling to SECONDS_OF_INACTIVITY_BEFORE_IDLING
|
|
43
|
-
shellExecutor.executeCommand(`oc patch checluster ${cheClusterName} --type=merge ` +
|
|
44
|
-
`-p '{"spec":{"devEnvironments":{"secondsOfInactivityBeforeIdling": ${SECONDS_OF_INACTIVITY_BEFORE_IDLING}}}}'`);
|
|
45
|
-
});
|
|
46
|
-
suiteTeardown(function () {
|
|
47
|
-
// restore spec.devEnvironments.secondsOfInactivityBeforeIdling to original value
|
|
48
|
-
shellExecutor.executeCommand(`oc patch checluster ${cheClusterName} --type=merge ` +
|
|
49
|
-
`-p '{"spec":{"devEnvironments":{"secondsOfInactivityBeforeIdling": ${defaultIdleTimeoutValue}}}}'`);
|
|
50
|
-
});
|
|
51
|
-
suiteSetup('Login', async function () {
|
|
52
|
-
await loginTests.loginIntoChe();
|
|
53
|
-
});
|
|
54
|
-
test(`Create and open new workspace, stack:${stackName}`, async function () {
|
|
55
|
-
await workspaceHandlingTests.createAndOpenWorkspace(stackName);
|
|
56
|
-
await workspaceHandlingTests.obtainWorkspaceNameFromStartingPage();
|
|
57
|
-
});
|
|
58
|
-
test('Wait workspace readiness', async function () {
|
|
59
|
-
(0, MochaHooks_1.registerRunningWorkspace)(WorkspaceHandlingTests_1.WorkspaceHandlingTests.getWorkspaceName());
|
|
60
|
-
await projectAndFileTests.waitWorkspaceReadinessForCheCodeEditor();
|
|
61
|
-
await projectAndFileTests.performTrustAuthorDialog();
|
|
62
|
-
});
|
|
63
|
-
test('Wait idle timeout dialog and check Dialog buttons', async function () {
|
|
64
|
-
await driverHelper.waitVisibility(webCheCodeLocators.Dialog.details, SECONDS_OF_INACTIVITY_BEFORE_IDLING * 1000); // ms
|
|
65
|
-
const dialog = new monaco_page_objects_1.ModalDialog();
|
|
66
|
-
(0, chai_1.expect)(await dialog.getDetails()).includes('Your workspace has stopped due to inactivity.');
|
|
67
|
-
await checkDialogButton('Cancel');
|
|
68
|
-
await checkDialogButton('Return to dashboard');
|
|
69
|
-
await checkDialogButton('Restart your workspace');
|
|
70
|
-
});
|
|
71
|
-
test('Check that the workspace has Stopped state', async function () {
|
|
72
|
-
await dashboard.openDashboard();
|
|
73
|
-
await dashboard.clickWorkspacesButton();
|
|
74
|
-
await workspaces.waitPage();
|
|
75
|
-
await workspaces.waitWorkspaceWithStoppedStatus(WorkspaceHandlingTests_1.WorkspaceHandlingTests.getWorkspaceName());
|
|
76
|
-
});
|
|
77
|
-
suiteTeardown('Stop and delete the workspace by API', async function () {
|
|
78
|
-
await testWorkspaceUtil.deleteWorkspaceByName(WorkspaceHandlingTests_1.WorkspaceHandlingTests.getWorkspaceName());
|
|
79
|
-
});
|
|
80
|
-
suiteTeardown('Unregister running workspace', function () {
|
|
81
|
-
(0, MochaHooks_1.registerRunningWorkspace)('');
|
|
82
|
-
});
|
|
83
|
-
});
|
|
84
|
-
//# sourceMappingURL=WorkspaceIdleTimeout.spec.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"WorkspaceIdleTimeout.spec.js","sourceRoot":"","sources":["../../../specs/miscellaneous/WorkspaceIdleTimeout.spec.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,84 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
/** *******************************************************************
|
|
4
|
-
* copyright (c) 2025 Red Hat, Inc.
|
|
5
|
-
*
|
|
6
|
-
* This program and the accompanying materials are made
|
|
7
|
-
* available under the terms of the Eclipse Public License 2.0
|
|
8
|
-
* which is available at https://www.eclipse.org/legal/epl-2.0/
|
|
9
|
-
*
|
|
10
|
-
* SPDX-License-Identifier: EPL-2.0
|
|
11
|
-
**********************************************************************/
|
|
12
|
-
const inversify_config_1 = require("../../configs/inversify.config");
|
|
13
|
-
const inversify_types_1 = require("../../configs/inversify.types");
|
|
14
|
-
const WorkspaceHandlingTests_1 = require("../../tests-library/WorkspaceHandlingTests");
|
|
15
|
-
const MochaHooks_1 = require("../MochaHooks");
|
|
16
|
-
const monaco_page_objects_1 = require("monaco-page-objects");
|
|
17
|
-
const chai_1 = require("chai");
|
|
18
|
-
suite('"Check workspace run timeout" test', function () {
|
|
19
|
-
const workspaceHandlingTests = inversify_config_1.e2eContainer.get(inversify_types_1.CLASSES.WorkspaceHandlingTests);
|
|
20
|
-
const projectAndFileTests = inversify_config_1.e2eContainer.get(inversify_types_1.CLASSES.ProjectAndFileTests);
|
|
21
|
-
const loginTests = inversify_config_1.e2eContainer.get(inversify_types_1.CLASSES.LoginTests);
|
|
22
|
-
const dashboard = inversify_config_1.e2eContainer.get(inversify_types_1.CLASSES.Dashboard);
|
|
23
|
-
const workspaces = inversify_config_1.e2eContainer.get(inversify_types_1.CLASSES.Workspaces);
|
|
24
|
-
const driverHelper = inversify_config_1.e2eContainer.get(inversify_types_1.CLASSES.DriverHelper);
|
|
25
|
-
const cheCodeLocatorLoader = inversify_config_1.e2eContainer.get(inversify_types_1.CLASSES.CheCodeLocatorLoader);
|
|
26
|
-
const webCheCodeLocators = cheCodeLocatorLoader.webCheCodeLocators;
|
|
27
|
-
const kubernetesCommandLineToolsExecutor = inversify_config_1.e2eContainer.get(inversify_types_1.CLASSES.KubernetesCommandLineToolsExecutor);
|
|
28
|
-
const shellExecutor = inversify_config_1.e2eContainer.get(inversify_types_1.CLASSES.ShellExecutor);
|
|
29
|
-
const testWorkspaceUtil = inversify_config_1.e2eContainer.get(inversify_types_1.TYPES.WorkspaceUtil);
|
|
30
|
-
const SECONDS_OF_RUN_BEFORE_IDLING = Number(process.env.TS_SELENIUM_SECONDS_OF_RUN_BEFORE_IDLING) || 60;
|
|
31
|
-
const stackName = 'Empty Workspace';
|
|
32
|
-
const cheClusterName = 'devspaces';
|
|
33
|
-
let defaultRunTimeoutValue = 0;
|
|
34
|
-
async function checkDialogButton(buttonName) {
|
|
35
|
-
await driverHelper.waitVisibility(monaco_page_objects_1.By.xpath(`//div[@class='dialog-buttons']//a[text()='${buttonName}']`));
|
|
36
|
-
}
|
|
37
|
-
suiteSetup(function () {
|
|
38
|
-
kubernetesCommandLineToolsExecutor.loginToOcp();
|
|
39
|
-
shellExecutor.executeCommand('oc project openshift-devspaces');
|
|
40
|
-
// get current value of spec.devEnvironments.secondsOfRunBeforeIdling
|
|
41
|
-
defaultRunTimeoutValue = Number(shellExecutor.executeCommand(`oc get checluster/${cheClusterName} -o "jsonpath={.spec.devEnvironments.secondsOfRunBeforeIdling}"`));
|
|
42
|
-
// set spec.devEnvironments.secondsOfRunBeforeIdling to SECONDS_OF_RUN_BEFORE_IDLING
|
|
43
|
-
shellExecutor.executeCommand(`oc patch checluster ${cheClusterName} --type=merge ` +
|
|
44
|
-
`-p '{"spec":{"devEnvironments":{"secondsOfRunBeforeIdling": ${SECONDS_OF_RUN_BEFORE_IDLING}}}}'`);
|
|
45
|
-
});
|
|
46
|
-
suiteTeardown(function () {
|
|
47
|
-
// restore spec.devEnvironments.secondsOfRunBeforeIdling to original value
|
|
48
|
-
shellExecutor.executeCommand(`oc patch checluster ${cheClusterName} --type=merge ` +
|
|
49
|
-
`-p '{"spec":{"devEnvironments":{"secondsOfRunBeforeIdling": ${defaultRunTimeoutValue}}}}'`);
|
|
50
|
-
});
|
|
51
|
-
suiteSetup('Login', async function () {
|
|
52
|
-
await loginTests.loginIntoChe();
|
|
53
|
-
});
|
|
54
|
-
test(`Create and open new workspace, stack:${stackName}`, async function () {
|
|
55
|
-
await workspaceHandlingTests.createAndOpenWorkspace(stackName);
|
|
56
|
-
await workspaceHandlingTests.obtainWorkspaceNameFromStartingPage();
|
|
57
|
-
});
|
|
58
|
-
test('Wait workspace readiness', async function () {
|
|
59
|
-
(0, MochaHooks_1.registerRunningWorkspace)(WorkspaceHandlingTests_1.WorkspaceHandlingTests.getWorkspaceName());
|
|
60
|
-
await projectAndFileTests.waitWorkspaceReadinessForCheCodeEditor();
|
|
61
|
-
await projectAndFileTests.performTrustAuthorDialog();
|
|
62
|
-
});
|
|
63
|
-
test('Wait run timeout dialog and check Dialog buttons', async function () {
|
|
64
|
-
await driverHelper.waitVisibility(webCheCodeLocators.Dialog.details, SECONDS_OF_RUN_BEFORE_IDLING * 1000); // ms
|
|
65
|
-
const dialog = new monaco_page_objects_1.ModalDialog();
|
|
66
|
-
(0, chai_1.expect)(await dialog.getDetails()).includes('Your workspace has stopped because it has reached the run timeout.');
|
|
67
|
-
await checkDialogButton('Cancel');
|
|
68
|
-
await checkDialogButton('Return to dashboard');
|
|
69
|
-
await checkDialogButton('Restart your workspace');
|
|
70
|
-
});
|
|
71
|
-
test('Check that the workspace has Stopped state', async function () {
|
|
72
|
-
await dashboard.openDashboard();
|
|
73
|
-
await dashboard.clickWorkspacesButton();
|
|
74
|
-
await workspaces.waitPage();
|
|
75
|
-
await workspaces.waitWorkspaceWithStoppedStatus(WorkspaceHandlingTests_1.WorkspaceHandlingTests.getWorkspaceName());
|
|
76
|
-
});
|
|
77
|
-
suiteTeardown('Stop and delete the workspace by API', async function () {
|
|
78
|
-
await testWorkspaceUtil.deleteWorkspaceByName(WorkspaceHandlingTests_1.WorkspaceHandlingTests.getWorkspaceName());
|
|
79
|
-
});
|
|
80
|
-
suiteTeardown('Unregister running workspace', function () {
|
|
81
|
-
(0, MochaHooks_1.registerRunningWorkspace)('');
|
|
82
|
-
});
|
|
83
|
-
});
|
|
84
|
-
//# sourceMappingURL=WorkspaceRunTimeout.spec.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"WorkspaceRunTimeout.spec.js","sourceRoot":"","sources":["../../../specs/miscellaneous/WorkspaceRunTimeout.spec.ts"],"names":[],"mappings":"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"}
|