@eclipse-che/che-e2e 7.123.0-next-677aa96 → 7.124.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.
Files changed (264) hide show
  1. package/index.ts +5 -5
  2. package/package.json +1 -1
  3. package/specs/dashboard-samples/RecommendedExtensions.spec.ts +25 -5
  4. package/tests-library/ProjectAndFileTests.ts +26 -0
  5. package/utils/workspace/ApiUrlResolver.ts +11 -1
  6. package/utils/workspace/TestWorkspaceUtil.ts +10 -3
  7. package/dist/configs/inversify.config.js +0 -123
  8. package/dist/configs/inversify.config.js.map +0 -1
  9. package/dist/configs/inversify.types.js +0 -74
  10. package/dist/configs/inversify.types.js.map +0 -1
  11. package/dist/configs/mocharc.js +0 -42
  12. package/dist/configs/mocharc.js.map +0 -1
  13. package/dist/constants/API_TEST_CONSTANTS.js +0 -60
  14. package/dist/constants/API_TEST_CONSTANTS.js.map +0 -1
  15. package/dist/constants/BASE_TEST_CONSTANTS.js +0 -109
  16. package/dist/constants/BASE_TEST_CONSTANTS.js.map +0 -1
  17. package/dist/constants/CHROME_DRIVER_CONSTANTS.js +0 -40
  18. package/dist/constants/CHROME_DRIVER_CONSTANTS.js.map +0 -1
  19. package/dist/constants/EDITOR_CONSTANTS.js +0 -114
  20. package/dist/constants/EDITOR_CONSTANTS.js.map +0 -1
  21. package/dist/constants/FACTORY_TEST_CONSTANTS.js +0 -87
  22. package/dist/constants/FACTORY_TEST_CONSTANTS.js.map +0 -1
  23. package/dist/constants/MOCHA_CONSTANTS.js +0 -24
  24. package/dist/constants/MOCHA_CONSTANTS.js.map +0 -1
  25. package/dist/constants/MONACO_CONSTANTS.js +0 -25
  26. package/dist/constants/MONACO_CONSTANTS.js.map +0 -1
  27. package/dist/constants/OAUTH_CONSTANTS.js +0 -53
  28. package/dist/constants/OAUTH_CONSTANTS.js.map +0 -1
  29. package/dist/constants/PLUGIN_TEST_CONSTANTS.js +0 -19
  30. package/dist/constants/PLUGIN_TEST_CONSTANTS.js.map +0 -1
  31. package/dist/constants/REPORTER_CONSTANTS.js +0 -123
  32. package/dist/constants/REPORTER_CONSTANTS.js.map +0 -1
  33. package/dist/constants/TIMEOUT_CONSTANTS.js +0 -101
  34. package/dist/constants/TIMEOUT_CONSTANTS.js.map +0 -1
  35. package/dist/driver/ChromeDriver.js +0 -77
  36. package/dist/driver/ChromeDriver.js.map +0 -1
  37. package/dist/driver/IDriver.js +0 -3
  38. package/dist/driver/IDriver.js.map +0 -1
  39. package/dist/index.js +0 -99
  40. package/dist/index.js.map +0 -1
  41. package/dist/pageobjects/dashboard/CreateWorkspace.js +0 -181
  42. package/dist/pageobjects/dashboard/CreateWorkspace.js.map +0 -1
  43. package/dist/pageobjects/dashboard/Dashboard.js +0 -208
  44. package/dist/pageobjects/dashboard/Dashboard.js.map +0 -1
  45. package/dist/pageobjects/dashboard/TrustAuthorPopup.js +0 -61
  46. package/dist/pageobjects/dashboard/TrustAuthorPopup.js.map +0 -1
  47. package/dist/pageobjects/dashboard/UserPreferences.js +0 -268
  48. package/dist/pageobjects/dashboard/UserPreferences.js.map +0 -1
  49. package/dist/pageobjects/dashboard/Workspaces.js +0 -242
  50. package/dist/pageobjects/dashboard/Workspaces.js.map +0 -1
  51. package/dist/pageobjects/dashboard/workspace-details/WorkspaceDetails.js +0 -192
  52. package/dist/pageobjects/dashboard/workspace-details/WorkspaceDetails.js.map +0 -1
  53. package/dist/pageobjects/git-providers/OauthPage.js +0 -218
  54. package/dist/pageobjects/git-providers/OauthPage.js.map +0 -1
  55. package/dist/pageobjects/ide/AiCodeSignInDialog.js +0 -55
  56. package/dist/pageobjects/ide/AiCodeSignInDialog.js.map +0 -1
  57. package/dist/pageobjects/ide/CheCodeLocatorLoader.js +0 -108
  58. package/dist/pageobjects/ide/CheCodeLocatorLoader.js.map +0 -1
  59. package/dist/pageobjects/ide/CommandPalette.js +0 -117
  60. package/dist/pageobjects/ide/CommandPalette.js.map +0 -1
  61. package/dist/pageobjects/ide/ExplorerView.js +0 -108
  62. package/dist/pageobjects/ide/ExplorerView.js.map +0 -1
  63. package/dist/pageobjects/ide/ExtensionsView.js +0 -162
  64. package/dist/pageobjects/ide/ExtensionsView.js.map +0 -1
  65. package/dist/pageobjects/ide/GitHubExtensionDialog.js +0 -66
  66. package/dist/pageobjects/ide/GitHubExtensionDialog.js.map +0 -1
  67. package/dist/pageobjects/ide/NotificationHandler.js +0 -83
  68. package/dist/pageobjects/ide/NotificationHandler.js.map +0 -1
  69. package/dist/pageobjects/ide/RestartWorkspaceDialog.js +0 -80
  70. package/dist/pageobjects/ide/RestartWorkspaceDialog.js.map +0 -1
  71. package/dist/pageobjects/ide/RestrictedModeButton.js +0 -57
  72. package/dist/pageobjects/ide/RestrictedModeButton.js.map +0 -1
  73. package/dist/pageobjects/ide/SourceControlView.js +0 -52
  74. package/dist/pageobjects/ide/SourceControlView.js.map +0 -1
  75. package/dist/pageobjects/ide/ViewsMoreActionsButton.js +0 -73
  76. package/dist/pageobjects/ide/ViewsMoreActionsButton.js.map +0 -1
  77. package/dist/pageobjects/login/interfaces/ICheLoginPage.js +0 -12
  78. package/dist/pageobjects/login/interfaces/ICheLoginPage.js.map +0 -1
  79. package/dist/pageobjects/login/interfaces/IOcpLoginPage.js +0 -12
  80. package/dist/pageobjects/login/interfaces/IOcpLoginPage.js.map +0 -1
  81. package/dist/pageobjects/login/kubernetes/DexLoginPage.js +0 -69
  82. package/dist/pageobjects/login/kubernetes/DexLoginPage.js.map +0 -1
  83. package/dist/pageobjects/login/kubernetes/KubernetesLoginPage.js +0 -50
  84. package/dist/pageobjects/login/kubernetes/KubernetesLoginPage.js.map +0 -1
  85. package/dist/pageobjects/login/openshift/OcpLoginPage.js +0 -88
  86. package/dist/pageobjects/login/openshift/OcpLoginPage.js.map +0 -1
  87. package/dist/pageobjects/login/openshift/OcpRedHatLoginPage.js +0 -73
  88. package/dist/pageobjects/login/openshift/OcpRedHatLoginPage.js.map +0 -1
  89. package/dist/pageobjects/login/openshift/OcpUserLoginPage.js +0 -53
  90. package/dist/pageobjects/login/openshift/OcpUserLoginPage.js.map +0 -1
  91. package/dist/pageobjects/login/openshift/RedHatLoginPage.js +0 -85
  92. package/dist/pageobjects/login/openshift/RedHatLoginPage.js.map +0 -1
  93. package/dist/pageobjects/login/openshift/RegularUserOcpCheLoginPage.js +0 -65
  94. package/dist/pageobjects/login/openshift/RegularUserOcpCheLoginPage.js.map +0 -1
  95. package/dist/pageobjects/openshift/OcpApplicationPage.js +0 -60
  96. package/dist/pageobjects/openshift/OcpApplicationPage.js.map +0 -1
  97. package/dist/pageobjects/openshift/OcpImportFromGitPage.js +0 -92
  98. package/dist/pageobjects/openshift/OcpImportFromGitPage.js.map +0 -1
  99. package/dist/pageobjects/openshift/OcpMainPage.js +0 -140
  100. package/dist/pageobjects/openshift/OcpMainPage.js.map +0 -1
  101. package/dist/pageobjects/webterminal/WebTerminalPage.js +0 -182
  102. package/dist/pageobjects/webterminal/WebTerminalPage.js.map +0 -1
  103. package/dist/specs/MochaHooks.js +0 -142
  104. package/dist/specs/MochaHooks.js.map +0 -1
  105. package/dist/specs/SmokeTest.spec.js +0 -58
  106. package/dist/specs/SmokeTest.spec.js.map +0 -1
  107. package/dist/specs/api/AnsibleDevFileAPI.spec.js +0 -263
  108. package/dist/specs/api/AnsibleDevFileAPI.spec.js.map +0 -1
  109. package/dist/specs/api/BuildPushRunPodmanContainerAPI.spec.js +0 -147
  110. package/dist/specs/api/BuildPushRunPodmanContainerAPI.spec.js.map +0 -1
  111. package/dist/specs/api/ContainerOverridesAPI.spec.js +0 -40
  112. package/dist/specs/api/ContainerOverridesAPI.spec.js.map +0 -1
  113. package/dist/specs/api/CppDevFileAPI.spec.js +0 -87
  114. package/dist/specs/api/CppDevFileAPI.spec.js.map +0 -1
  115. package/dist/specs/api/DevfileAcceptanceTestAPI.spec.js +0 -99
  116. package/dist/specs/api/DevfileAcceptanceTestAPI.spec.js.map +0 -1
  117. package/dist/specs/api/DotnetDevFileAPI.spec.js +0 -89
  118. package/dist/specs/api/DotnetDevFileAPI.spec.js.map +0 -1
  119. package/dist/specs/api/EmptyWorkspaceAPI.spec.js +0 -60
  120. package/dist/specs/api/EmptyWorkspaceAPI.spec.js.map +0 -1
  121. package/dist/specs/api/GoDevFileAPI.spec.js +0 -82
  122. package/dist/specs/api/GoDevFileAPI.spec.js.map +0 -1
  123. package/dist/specs/api/InbuiltApplicationDevWorkspacesAPI.spec.js +0 -97
  124. package/dist/specs/api/InbuiltApplicationDevWorkspacesAPI.spec.js.map +0 -1
  125. package/dist/specs/api/JBossEapDevFileAPI.spec.js +0 -127
  126. package/dist/specs/api/JBossEapDevFileAPI.spec.js.map +0 -1
  127. package/dist/specs/api/LombokDevFileAPI.spec.js +0 -81
  128. package/dist/specs/api/LombokDevFileAPI.spec.js.map +0 -1
  129. package/dist/specs/api/NodeJSMongoDBDevFileAPI.spec.js +0 -81
  130. package/dist/specs/api/NodeJSMongoDBDevFileAPI.spec.js.map +0 -1
  131. package/dist/specs/api/NodeJsExpressDevFileAPI.spec.js +0 -130
  132. package/dist/specs/api/NodeJsExpressDevFileAPI.spec.js.map +0 -1
  133. package/dist/specs/api/PhpDevFileAPI.spec.js +0 -71
  134. package/dist/specs/api/PhpDevFileAPI.spec.js.map +0 -1
  135. package/dist/specs/api/PodOverridesAPI.spec.js +0 -46
  136. package/dist/specs/api/PodOverridesAPI.spec.js.map +0 -1
  137. package/dist/specs/api/PythonDevFileAPI.spec.js +0 -71
  138. package/dist/specs/api/PythonDevFileAPI.spec.js.map +0 -1
  139. package/dist/specs/api/QuarkusDevFileAPI.spec.js +0 -97
  140. package/dist/specs/api/QuarkusDevFileAPI.spec.js.map +0 -1
  141. package/dist/specs/dashboard-samples/Documentation.spec.js +0 -118
  142. package/dist/specs/dashboard-samples/Documentation.spec.js.map +0 -1
  143. package/dist/specs/dashboard-samples/EmptyWorkspace.spec.js +0 -60
  144. package/dist/specs/dashboard-samples/EmptyWorkspace.spec.js.map +0 -1
  145. package/dist/specs/dashboard-samples/Quarkus.spec.js +0 -64
  146. package/dist/specs/dashboard-samples/Quarkus.spec.js.map +0 -1
  147. package/dist/specs/dashboard-samples/RecommendedExtensions.spec.js +0 -345
  148. package/dist/specs/dashboard-samples/RecommendedExtensions.spec.js.map +0 -1
  149. package/dist/specs/dashboard-samples/StartWorkspaceUsingDesktopEditors.spec.js +0 -171
  150. package/dist/specs/dashboard-samples/StartWorkspaceUsingDesktopEditors.spec.js.map +0 -1
  151. package/dist/specs/devconsole-intergration/DevConsoleIntegration.spec.js +0 -155
  152. package/dist/specs/devconsole-intergration/DevConsoleIntegration.spec.js.map +0 -1
  153. package/dist/specs/factory/Factory.spec.js +0 -183
  154. package/dist/specs/factory/Factory.spec.js.map +0 -1
  155. package/dist/specs/factory/FactoryWithGitRepoOptions.spec.js +0 -63
  156. package/dist/specs/factory/FactoryWithGitRepoOptions.spec.js.map +0 -1
  157. package/dist/specs/factory/NoSetupRepoFactory.spec.js +0 -212
  158. package/dist/specs/factory/NoSetupRepoFactory.spec.js.map +0 -1
  159. package/dist/specs/factory/RefusedOAuthFactory.spec.js +0 -239
  160. package/dist/specs/factory/RefusedOAuthFactory.spec.js.map +0 -1
  161. package/dist/specs/factory/SshUrlNoOauthPatFactory.spec.js +0 -202
  162. package/dist/specs/factory/SshUrlNoOauthPatFactory.spec.js.map +0 -1
  163. package/dist/specs/miscellaneous/CreateWorkspaceWithExistedName.spec.js +0 -77
  164. package/dist/specs/miscellaneous/CreateWorkspaceWithExistedName.spec.js.map +0 -1
  165. package/dist/specs/miscellaneous/CreateWorkspaceWithExistingNameFromEmptyWorkspaceSample.spec.js +0 -106
  166. package/dist/specs/miscellaneous/CreateWorkspaceWithExistingNameFromEmptyWorkspaceSample.spec.js.map +0 -1
  167. package/dist/specs/miscellaneous/CreateWorkspaceWithExistingNameFromGitUrl.spec.js +0 -113
  168. package/dist/specs/miscellaneous/CreateWorkspaceWithExistingNameFromGitUrl.spec.js.map +0 -1
  169. package/dist/specs/miscellaneous/CreateWorkspaceWithExistingNameFromSample.spec.js +0 -116
  170. package/dist/specs/miscellaneous/CreateWorkspaceWithExistingNameFromSample.spec.js.map +0 -1
  171. package/dist/specs/miscellaneous/CustomOpenVSXRegistry.spec.js +0 -205
  172. package/dist/specs/miscellaneous/CustomOpenVSXRegistry.spec.js.map +0 -1
  173. package/dist/specs/miscellaneous/ExtensionActivationTest.spec.js +0 -129
  174. package/dist/specs/miscellaneous/ExtensionActivationTest.spec.js.map +0 -1
  175. package/dist/specs/miscellaneous/KubedockPodmanPersistUserHomeTest.spec.js +0 -121
  176. package/dist/specs/miscellaneous/KubedockPodmanPersistUserHomeTest.spec.js.map +0 -1
  177. package/dist/specs/miscellaneous/KubedockPodmanTest.spec.js +0 -103
  178. package/dist/specs/miscellaneous/KubedockPodmanTest.spec.js.map +0 -1
  179. package/dist/specs/miscellaneous/PredefinedNamespace.spec.js +0 -111
  180. package/dist/specs/miscellaneous/PredefinedNamespace.spec.js.map +0 -1
  181. package/dist/specs/miscellaneous/RenameWorkspace.spec.js +0 -116
  182. package/dist/specs/miscellaneous/RenameWorkspace.spec.js.map +0 -1
  183. package/dist/specs/miscellaneous/RevokeOauth.spec.js +0 -29
  184. package/dist/specs/miscellaneous/RevokeOauth.spec.js.map +0 -1
  185. package/dist/specs/miscellaneous/UserPreferencesTest.spec.js +0 -26
  186. package/dist/specs/miscellaneous/UserPreferencesTest.spec.js.map +0 -1
  187. package/dist/specs/miscellaneous/UserSecretsInWorkspace.spec.js +0 -78
  188. package/dist/specs/miscellaneous/UserSecretsInWorkspace.spec.js.map +0 -1
  189. package/dist/specs/miscellaneous/VsixInstallationDisableTest.spec.js +0 -196
  190. package/dist/specs/miscellaneous/VsixInstallationDisableTest.spec.js.map +0 -1
  191. package/dist/specs/miscellaneous/WorkspaceBackupRestore.spec.js +0 -208
  192. package/dist/specs/miscellaneous/WorkspaceBackupRestore.spec.js.map +0 -1
  193. package/dist/specs/miscellaneous/WorkspaceIdleTimeout.spec.js +0 -84
  194. package/dist/specs/miscellaneous/WorkspaceIdleTimeout.spec.js.map +0 -1
  195. package/dist/specs/miscellaneous/WorkspaceRunTimeout.spec.js +0 -84
  196. package/dist/specs/miscellaneous/WorkspaceRunTimeout.spec.js.map +0 -1
  197. package/dist/specs/miscellaneous/WorkspaceWithParent.spec.js +0 -101
  198. package/dist/specs/miscellaneous/WorkspaceWithParent.spec.js.map +0 -1
  199. package/dist/specs/restart-tests/RestartFromLocalDevfile.spec.js +0 -266
  200. package/dist/specs/restart-tests/RestartFromLocalDevfile.spec.js.map +0 -1
  201. package/dist/specs/web-terminal/WebTerminalTest.spec.js +0 -47
  202. package/dist/specs/web-terminal/WebTerminalTest.spec.js.map +0 -1
  203. package/dist/specs/web-terminal/WebTerminalUnderAdmin.spec.js +0 -82
  204. package/dist/specs/web-terminal/WebTerminalUnderAdmin.spec.js.map +0 -1
  205. package/dist/specs/web-terminal/WebTerminalUnderRegularUser.spec.js +0 -78
  206. package/dist/specs/web-terminal/WebTerminalUnderRegularUser.spec.js.map +0 -1
  207. package/dist/suites/devfile-acceptance-test-suite/DynamicallyGeneratingAPITest.suite.js +0 -13
  208. package/dist/suites/devfile-acceptance-test-suite/DynamicallyGeneratingAPITest.suite.js.map +0 -1
  209. package/dist/suites/disconnected-ocp/APITest.suite.js +0 -14
  210. package/dist/suites/disconnected-ocp/APITest.suite.js.map +0 -1
  211. package/dist/suites/disconnected-ocp/DynamicallyGeneratingAPITest.suite.js +0 -13
  212. package/dist/suites/disconnected-ocp/DynamicallyGeneratingAPITest.suite.js.map +0 -1
  213. package/dist/suites/disconnected-ocp/UITest.suite.js +0 -19
  214. package/dist/suites/disconnected-ocp/UITest.suite.js.map +0 -1
  215. package/dist/suites/online-ocp/APITest.suite.js +0 -15
  216. package/dist/suites/online-ocp/APITest.suite.js.map +0 -1
  217. package/dist/suites/online-ocp/DynamicallyGeneratingAPITest.suite.js +0 -13
  218. package/dist/suites/online-ocp/DynamicallyGeneratingAPITest.suite.js.map +0 -1
  219. package/dist/suites/online-ocp/UITest.suite.js +0 -23
  220. package/dist/suites/online-ocp/UITest.suite.js.map +0 -1
  221. package/dist/tests-library/LoginTests.js +0 -76
  222. package/dist/tests-library/LoginTests.js.map +0 -1
  223. package/dist/tests-library/ProjectAndFileTests.js +0 -256
  224. package/dist/tests-library/ProjectAndFileTests.js.map +0 -1
  225. package/dist/tests-library/WorkspaceHandlingTests.js +0 -219
  226. package/dist/tests-library/WorkspaceHandlingTests.js.map +0 -1
  227. package/dist/utils/BrowserTabsUtil.js +0 -124
  228. package/dist/utils/BrowserTabsUtil.js.map +0 -1
  229. package/dist/utils/CheReporter.js +0 -238
  230. package/dist/utils/CheReporter.js.map +0 -1
  231. package/dist/utils/DevWorkspaceConfigurationHelper.js +0 -145
  232. package/dist/utils/DevWorkspaceConfigurationHelper.js.map +0 -1
  233. package/dist/utils/DevfilesHelper.js +0 -177
  234. package/dist/utils/DevfilesHelper.js.map +0 -1
  235. package/dist/utils/DriverHelper.js +0 -609
  236. package/dist/utils/DriverHelper.js.map +0 -1
  237. package/dist/utils/IContextParams.js +0 -12
  238. package/dist/utils/IContextParams.js.map +0 -1
  239. package/dist/utils/IKubernetesCommandLineToolsExecutor.js +0 -3
  240. package/dist/utils/IKubernetesCommandLineToolsExecutor.js.map +0 -1
  241. package/dist/utils/KubernetesCommandLineToolsExecutor.js +0 -338
  242. package/dist/utils/KubernetesCommandLineToolsExecutor.js.map +0 -1
  243. package/dist/utils/Logger.js +0 -146
  244. package/dist/utils/Logger.js.map +0 -1
  245. package/dist/utils/ScreenCatcher.js +0 -114
  246. package/dist/utils/ScreenCatcher.js.map +0 -1
  247. package/dist/utils/ShellExecutor.js +0 -47
  248. package/dist/utils/ShellExecutor.js.map +0 -1
  249. package/dist/utils/StringUtil.js +0 -107
  250. package/dist/utils/StringUtil.js.map +0 -1
  251. package/dist/utils/request-handlers/CheApiRequestHandler.js +0 -128
  252. package/dist/utils/request-handlers/CheApiRequestHandler.js.map +0 -1
  253. package/dist/utils/request-handlers/headers/CheMultiuserAuthorizationHeaderHandler.js +0 -55
  254. package/dist/utils/request-handlers/headers/CheMultiuserAuthorizationHeaderHandler.js.map +0 -1
  255. package/dist/utils/request-handlers/headers/IAuthorizationHeaderHandler.js +0 -12
  256. package/dist/utils/request-handlers/headers/IAuthorizationHeaderHandler.js.map +0 -1
  257. package/dist/utils/workspace/ApiUrlResolver.js +0 -117
  258. package/dist/utils/workspace/ApiUrlResolver.js.map +0 -1
  259. package/dist/utils/workspace/ITestWorkspaceUtil.js +0 -12
  260. package/dist/utils/workspace/ITestWorkspaceUtil.js.map +0 -1
  261. package/dist/utils/workspace/TestWorkspaceUtil.js +0 -202
  262. package/dist/utils/workspace/TestWorkspaceUtil.js.map +0 -1
  263. package/dist/utils/workspace/WorkspaceStatus.js +0 -19
  264. package/dist/utils/workspace/WorkspaceStatus.js.map +0 -1
@@ -1,3 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- //# sourceMappingURL=IKubernetesCommandLineToolsExecutor.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"IKubernetesCommandLineToolsExecutor.js","sourceRoot":"","sources":["../../utils/IKubernetesCommandLineToolsExecutor.ts"],"names":[],"mappings":""}
@@ -1,338 +0,0 @@
1
- "use strict";
2
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
- if (k2 === undefined) k2 = k;
4
- var desc = Object.getOwnPropertyDescriptor(m, k);
5
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
- desc = { enumerable: true, get: function() { return m[k]; } };
7
- }
8
- Object.defineProperty(o, k2, desc);
9
- }) : (function(o, m, k, k2) {
10
- if (k2 === undefined) k2 = k;
11
- o[k2] = m[k];
12
- }));
13
- var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
- Object.defineProperty(o, "default", { enumerable: true, value: v });
15
- }) : function(o, v) {
16
- o["default"] = v;
17
- });
18
- var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
19
- var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
20
- if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
21
- else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
22
- return c > 3 && r && Object.defineProperty(target, key, r), r;
23
- };
24
- var __importStar = (this && this.__importStar) || function (mod) {
25
- if (mod && mod.__esModule) return mod;
26
- var result = {};
27
- if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
28
- __setModuleDefault(result, mod);
29
- return result;
30
- };
31
- var __metadata = (this && this.__metadata) || function (k, v) {
32
- if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
33
- };
34
- var __param = (this && this.__param) || function (paramIndex, decorator) {
35
- return function (target, key) { decorator(target, key, paramIndex); }
36
- };
37
- var KubernetesCommandLineToolsExecutor_1;
38
- Object.defineProperty(exports, "__esModule", { value: true });
39
- exports.ContainerTerminal = exports.KubernetesCommandLineToolsExecutor = void 0;
40
- /** *******************************************************************
41
- * copyright (c) 2023-2026 Red Hat, Inc.
42
- *
43
- * This program and the accompanying materials are made
44
- * available under the terms of the Eclipse Public License 2.0
45
- * which is available at https://www.eclipse.org/legal/epl-2.0/
46
- *
47
- * SPDX-License-Identifier: EPL-2.0
48
- **********************************************************************/
49
- const shelljs_1 = require("shelljs");
50
- const Logger_1 = require("./Logger");
51
- const ShellExecutor_1 = require("./ShellExecutor");
52
- const path = __importStar(require("path"));
53
- const API_TEST_CONSTANTS_1 = require("../constants/API_TEST_CONSTANTS");
54
- const BASE_TEST_CONSTANTS_1 = require("../constants/BASE_TEST_CONSTANTS");
55
- const OAUTH_CONSTANTS_1 = require("../constants/OAUTH_CONSTANTS");
56
- const inversify_1 = require("inversify");
57
- const inversify_types_1 = require("../configs/inversify.types");
58
- const fs = __importStar(require("fs"));
59
- let KubernetesCommandLineToolsExecutor = KubernetesCommandLineToolsExecutor_1 = class KubernetesCommandLineToolsExecutor {
60
- constructor(shellExecutor) {
61
- this.shellExecutor = shellExecutor;
62
- this.kubernetesCommandLineTool = API_TEST_CONSTANTS_1.API_TEST_CONSTANTS.TS_API_TEST_KUBERNETES_COMMAND_LINE_TOOL;
63
- }
64
- set namespace(value) {
65
- this._namespace = value;
66
- }
67
- set workspaceName(value) {
68
- this._workspaceName = value;
69
- }
70
- get workspaceName() {
71
- return this._workspaceName;
72
- }
73
- get namespace() {
74
- if (BASE_TEST_CONSTANTS_1.BASE_TEST_CONSTANTS.TEST_NAMESPACE.length > 0) {
75
- this._namespace = BASE_TEST_CONSTANTS_1.BASE_TEST_CONSTANTS.TEST_NAMESPACE;
76
- }
77
- else if (!this._namespace) {
78
- const applicationName = BASE_TEST_CONSTANTS_1.BASE_TEST_CONSTANTS.TESTING_APPLICATION_NAME();
79
- if (applicationName === 'default') {
80
- this._namespace = applicationName;
81
- }
82
- else {
83
- this._namespace = OAUTH_CONSTANTS_1.OAUTH_CONSTANTS.TS_SELENIUM_OCP_USERNAME + '-' + applicationName;
84
- }
85
- }
86
- return this._namespace;
87
- }
88
- // login to Openshift cluster with username and password
89
- loginToOcp(user = OAUTH_CONSTANTS_1.OAUTH_CONSTANTS.TS_SELENIUM_OCP_USERNAME, password = OAUTH_CONSTANTS_1.OAUTH_CONSTANTS.TS_SELENIUM_OCP_PASSWORD) {
90
- if (this.kubernetesCommandLineTool === API_TEST_CONSTANTS_1.KubernetesCommandLineTool.OC) {
91
- Logger_1.Logger.debug(`${this.kubernetesCommandLineTool} - login to the "OC" client.`);
92
- const url = this.getServerUrl();
93
- if (this.isUserLoggedIn(user)) {
94
- Logger_1.Logger.debug(`${this.kubernetesCommandLineTool} - user already logged`);
95
- }
96
- else {
97
- Logger_1.Logger.debug(`${this.kubernetesCommandLineTool} - login ${url}, ${user}`);
98
- (0, shelljs_1.exec)(`oc login --server=${url} -u=${user} -p=${password} --insecure-skip-tls-verify`);
99
- }
100
- }
101
- else {
102
- Logger_1.Logger.debug(`${this.kubernetesCommandLineTool} - doesn't support login command`);
103
- }
104
- }
105
- getContainerName() {
106
- Logger_1.Logger.debug(`${this.kubernetesCommandLineTool} - get container name.`);
107
- Logger_1.Logger.debug(`Getting container name for pod: '${KubernetesCommandLineToolsExecutor_1.pod}' in namespace: ${this.namespace}`);
108
- const output = this.shellExecutor.executeCommand(`${this.kubernetesCommandLineTool} get pod ${KubernetesCommandLineToolsExecutor_1.pod} -o jsonpath='{.spec.containers[0].name}' -n ${this.namespace}`);
109
- (0, shelljs_1.echo)('\n');
110
- const containerName = output.stderr ? output.stderr : output.stdout;
111
- Logger_1.Logger.debug(`Found container name: '${containerName}'`);
112
- return containerName;
113
- }
114
- getWorkspacePodName() {
115
- Logger_1.Logger.debug(`${this.kubernetesCommandLineTool} - get workspace pod name.`);
116
- Logger_1.Logger.debug(`Looking for pod with label: controller.devfile.io/devworkspace_name=${this.workspaceName} in namespace: ${this.namespace}`);
117
- const output = this.shellExecutor.executeCommand(`${this.kubernetesCommandLineTool} get pod -l controller.devfile.io/devworkspace_name=${this.workspaceName} -n ${this.namespace} -o name`);
118
- let podName = output.stderr ? output.stderr : output.stdout.replace('\n', '');
119
- Logger_1.Logger.debug(`Found pod name (before removing prefix): '${podName}'`);
120
- // if pod not found, try to find by workspace name prefix (for restored workspaces with suffix)
121
- if (!podName || podName.trim() === '') {
122
- Logger_1.Logger.warn(`No pod found with exact label controller.devfile.io/devworkspace_name=${this.workspaceName}`);
123
- Logger_1.Logger.debug(`Trying to find pod with workspace name starting with: ${this.workspaceName}`);
124
- // get all pods and filter by label prefix
125
- const allPodsOutput = this.shellExecutor.executeCommand(`${this.kubernetesCommandLineTool} get pods -n ${this.namespace} -o jsonpath='{range .items[*]}{.metadata.name}{"\\t"}{.metadata.labels.controller\\.devfile\\.io/devworkspace_name}{"\\n"}{end}'`);
126
- if (allPodsOutput.stdout && this.workspaceName) {
127
- const lines = allPodsOutput.stdout.split('\n').filter((line) => line.trim() !== '');
128
- for (const line of lines) {
129
- const [name, label] = line.split('\t');
130
- if (label && this.workspaceName && label.startsWith(this.workspaceName)) {
131
- Logger_1.Logger.info(`Found pod by prefix match: ${name} with label ${label}`);
132
- podName = name;
133
- // update workspace name to the actual one with suffix
134
- this._workspaceName = label;
135
- Logger_1.Logger.info(`Updated workspace name to: ${this._workspaceName}`);
136
- break;
137
- }
138
- }
139
- }
140
- // if still not found, list all pods for debugging
141
- if (!podName || podName.trim() === '') {
142
- Logger_1.Logger.warn('Listing all pods in namespace for debugging:');
143
- const debugPods = this.shellExecutor.executeCommand(`${this.kubernetesCommandLineTool} get pods -n ${this.namespace} --show-labels`);
144
- Logger_1.Logger.warn(`All pods:\n${debugPods.stdout}`);
145
- }
146
- }
147
- // remove 'pod/' prefix if present (oc get -o name returns 'pod/podname')
148
- const cleanPodName = podName.replace(/^pod\//, '');
149
- Logger_1.Logger.debug(`Clean pod name (after removing prefix): '${cleanPodName}'`);
150
- return cleanPodName;
151
- }
152
- deleteDevWorkspace(devfileName) {
153
- Logger_1.Logger.debug(`${this.kubernetesCommandLineTool} - delete '${this.workspaceName}' devWorkspace`);
154
- this.shellExecutor.executeCommand(`${this.kubernetesCommandLineTool} patch dw ${this.workspaceName} -n ${this.namespace} -p '{ "metadata": { "finalizers": null }}' --type merge || true`);
155
- this.shellExecutor.executeCommand(`${this.kubernetesCommandLineTool} delete dw ${this.workspaceName} -n ${this.namespace} || true`);
156
- let dwtName;
157
- if (devfileName === undefined) {
158
- dwtName = `${BASE_TEST_CONSTANTS_1.BASE_TEST_CONSTANTS.TS_SELENIUM_EDITOR}-${this.workspaceName}`;
159
- }
160
- else {
161
- dwtName = `${BASE_TEST_CONSTANTS_1.BASE_TEST_CONSTANTS.TS_SELENIUM_EDITOR}-${devfileName}`;
162
- }
163
- Logger_1.Logger.debug(`${this.kubernetesCommandLineTool} - delete '${dwtName}' devWorkspaceTemplate`);
164
- this.shellExecutor.executeCommand(`${this.kubernetesCommandLineTool} delete dwt ${dwtName} -n ${this.namespace} || true`);
165
- }
166
- applyAndWaitDevWorkspace(yamlConfiguration) {
167
- Logger_1.Logger.debug(`${this.kubernetesCommandLineTool}`);
168
- if (this.kubernetesCommandLineTool === API_TEST_CONSTANTS_1.KubernetesCommandLineTool.KUBECTL) {
169
- this.createNamespace();
170
- }
171
- this.applyYamlConfigurationAsStringOutput(yamlConfiguration);
172
- return this.waitDevWorkspace();
173
- }
174
- execInContainerCommand(commandToExecute, container = KubernetesCommandLineToolsExecutor_1.container) {
175
- Logger_1.Logger.debug(`${this.kubernetesCommandLineTool}`);
176
- return this.shellExecutor.executeCommand(`${this.kubernetesCommandLineTool} exec -i ${KubernetesCommandLineToolsExecutor_1.pod} -n ${this.namespace} -c ${container} -- sh -c '${commandToExecute}'`);
177
- }
178
- execInContainerCommandWithTimeout(commandToExecute, container = KubernetesCommandLineToolsExecutor_1.container, timeout = '20') {
179
- Logger_1.Logger.debug(`${this.kubernetesCommandLineTool}`);
180
- return this.shellExecutor.executeCommand(` timeout ${timeout} ${this.kubernetesCommandLineTool} exec -i ${KubernetesCommandLineToolsExecutor_1.pod} -n ${this.namespace} -c ${container} -- sh -c '${commandToExecute}'`);
181
- }
182
- applyYamlConfigurationAsStringOutput(yamlConfiguration) {
183
- Logger_1.Logger.debug(`${this.kubernetesCommandLineTool}`);
184
- // write yaml configuration to the devfile file
185
- const randomSuffix = Math.floor(Math.random() * 10000);
186
- const devfileYamlPath = `/tmp/devfile-${randomSuffix}.yaml`;
187
- fs.writeFileSync(devfileYamlPath, yamlConfiguration);
188
- return this.shellExecutor.executeCommand(`${this.kubernetesCommandLineTool} apply -n ${this.namespace} -f ${devfileYamlPath} && rm -f ${devfileYamlPath}`);
189
- }
190
- applyWithoutNamespace(yamlConfiguration) {
191
- Logger_1.Logger.debug(`${this.kubernetesCommandLineTool}`);
192
- return this.shellExecutor.executeCommand(`cat <<EOF | ${this.kubernetesCommandLineTool} apply -f - \n` + yamlConfiguration + '\n' + 'EOF');
193
- }
194
- applyYamlConfigurationAsFile(pathToFile) {
195
- Logger_1.Logger.debug(`${this.kubernetesCommandLineTool}`);
196
- this.shellExecutor.executeCommand(`${this.kubernetesCommandLineTool} apply -n ${this.namespace} -f "${path.resolve(pathToFile)}"`);
197
- }
198
- getDevWorkspaceYamlConfiguration() {
199
- Logger_1.Logger.debug(`${this.kubernetesCommandLineTool}`);
200
- return this.shellExecutor.executeCommand(`${this.kubernetesCommandLineTool} get dw ${this.workspaceName} -n ${this.namespace} -o yaml`);
201
- }
202
- waitDevWorkspace(timeout = 360) {
203
- Logger_1.Logger.debug(`${this.kubernetesCommandLineTool} - wait till workspace ready.`);
204
- const output = this.shellExecutor.executeCommand(`${this.kubernetesCommandLineTool} wait -n ${this.namespace} --for=condition=Ready dw ${this.workspaceName} --timeout=${timeout}s`);
205
- this.getPodAndContainerNames();
206
- return output;
207
- }
208
- createNamespace() {
209
- Logger_1.Logger.debug(`${this.kubernetesCommandLineTool} - create namespace "${this.namespace}".`);
210
- this.shellExecutor.executeCommand(`${this.kubernetesCommandLineTool} create namespace ${this.namespace}`);
211
- }
212
- createProject(projectName) {
213
- Logger_1.Logger.debug(`${this.kubernetesCommandLineTool} - create new project "${projectName}".`);
214
- this.shellExecutor.executeCommand(`${this.kubernetesCommandLineTool} new-project ${projectName} -n ${this.namespace}`);
215
- }
216
- deleteProject(projectName) {
217
- Logger_1.Logger.debug(`${this.kubernetesCommandLineTool} - delete "${projectName}".`);
218
- this.shellExecutor.executeCommand(`${this.kubernetesCommandLineTool} delete project ${projectName} -n ${this.namespace}`);
219
- }
220
- getPodAndContainerNames() {
221
- Logger_1.Logger.debug(`${this.kubernetesCommandLineTool}`);
222
- KubernetesCommandLineToolsExecutor_1.pod = this.getWorkspacePodName();
223
- KubernetesCommandLineToolsExecutor_1.container = this.getContainerName();
224
- }
225
- /**
226
- * @param userName
227
- */
228
- isUserLoggedIn(userName) {
229
- Logger_1.Logger.debug(`${this.kubernetesCommandLineTool}`);
230
- const whoamiCommandOutput = this.shellExecutor.executeCommand('oc whoami && oc whoami --show-server=true');
231
- return whoamiCommandOutput.stdout.includes(userName) && whoamiCommandOutput.stdout.includes(this.getServerUrl());
232
- }
233
- getServerUrl() {
234
- Logger_1.Logger.debug(`${this.kubernetesCommandLineTool} - get server api url.`);
235
- return BASE_TEST_CONSTANTS_1.BASE_TEST_CONSTANTS.TS_SELENIUM_BASE_URL.replace('devspaces.apps', 'api') + ':6443';
236
- }
237
- getDevWorkspaceId() {
238
- Logger_1.Logger.debug(`${this.kubernetesCommandLineTool} - get devworkspaceId.`);
239
- const output = this.shellExecutor.executeCommand(`${this.kubernetesCommandLineTool} get dw ${this.workspaceName} -n ${this.namespace} -o jsonpath='{.status.devworkspaceId}'`);
240
- return output.stderr ? output.stderr : output.stdout.trim();
241
- }
242
- /**
243
- * starts port forwarding between the local machine and the service in the OpenShift cluster
244
- * @param serviceName - service name in 'Services', e.g. "che-host" or "che-dashboard"
245
- * @param serviceNamespace - namespace where the service is running, e.g. "eclipse-che"
246
- */
247
- startTcpPortForward(serviceName, serviceNamespace) {
248
- Logger_1.Logger.debug(`${this.kubernetesCommandLineTool} - start port forward for service "${serviceName}" on local port '8081' to remote port '8080'.`);
249
- (0, shelljs_1.exec)(`${this.kubernetesCommandLineTool} port-forward service/${serviceName} 8081:8080 -n ${serviceNamespace}`, {
250
- async: true
251
- });
252
- this.shellExecutor.wait(5);
253
- }
254
- /**
255
- * stops port forwarding between the local machine and the service
256
- */
257
- stopTcpPortForward() {
258
- Logger_1.Logger.debug('Stop port forwarding.');
259
- this.shellExecutor.executeCommand('pgrep -af "oc port-forward"');
260
- this.shellExecutor.executeCommand('pkill -f "oc port-forward.*8081:8080" || true');
261
- this.shellExecutor.executeCommand('pgrep -af "oc port-forward"');
262
- }
263
- /**
264
- * injectes 'kube config' file to the workspace container by API dashboard.
265
- * @param namespace - namespace where the devworkspace is running
266
- * @param devworkspaceId - uniqe identifier of the devworkspace
267
- */
268
- injectKubeConfig(devworkspaceId) {
269
- Logger_1.Logger.debug('Get cluster access token.');
270
- const clusterAcessToken = this.shellExecutor.executeCommand(`${this.kubernetesCommandLineTool} whoami -t`);
271
- Logger_1.Logger.debug('Inject kube config to the workspace.');
272
- const response = this.shellExecutor.executeCommand(`curl -i -X 'POST' \
273
- 'http://localhost:8081/dashboard/api/namespace/${this.namespace}/devworkspaceId/${devworkspaceId}/kubeconfig' \
274
- -H 'Authorization: Bearer ${clusterAcessToken.stdout.trim()}'`);
275
- if (response.stdout.trim().includes('204')) {
276
- Logger_1.Logger.debug('Kube config successfully injected (HTTP 204).');
277
- }
278
- else {
279
- Logger_1.Logger.error('Failed to inject kube config. HTTP status: ${response.stdout}');
280
- throw new Error(`Failed to inject kube config. HTTP status: ${response.stdout}`);
281
- }
282
- }
283
- /**
284
- * checks a pod is removed within the timeout
285
- * @param podName - name of the pod to check
286
- * @throws Error if a pod is not removed within the timeout
287
- */
288
- waitRemovingPod(podName) {
289
- Logger_1.Logger.debug(`${this.kubernetesCommandLineTool} - get pod name ${podName}.`);
290
- const moleculePodMName = this.shellExecutor.executeCommand(`${this.kubernetesCommandLineTool} get pod -n ${this.namespace} -o name | grep '${podName}'`);
291
- Logger_1.Logger.debug(`${this.kubernetesCommandLineTool} - check removing pod ${podName}.`);
292
- const output = this.shellExecutor.executeCommand(`${this.kubernetesCommandLineTool} wait -n ${this.namespace} --for=delete ${moleculePodMName.stdout.trim()} --timeout=60s`);
293
- if (output.stderr) {
294
- Logger_1.Logger.error(`Failed to remove pod ${podName} : ${output.stderr}`);
295
- throw new Error(`Failed to remove pod ${podName}: ${output.stderr}`);
296
- }
297
- else {
298
- Logger_1.Logger.debug(`Pod ${podName} successfully removed.`);
299
- }
300
- }
301
- };
302
- KubernetesCommandLineToolsExecutor = KubernetesCommandLineToolsExecutor_1 = __decorate([
303
- (0, inversify_1.injectable)(),
304
- __param(0, (0, inversify_1.inject)(inversify_types_1.CLASSES.ShellExecutor)),
305
- __metadata("design:paramtypes", [ShellExecutor_1.ShellExecutor])
306
- ], KubernetesCommandLineToolsExecutor);
307
- exports.KubernetesCommandLineToolsExecutor = KubernetesCommandLineToolsExecutor;
308
- let ContainerTerminal = class ContainerTerminal extends KubernetesCommandLineToolsExecutor {
309
- constructor(shellExecutor, cluster) {
310
- super(shellExecutor);
311
- this.shellExecutor = shellExecutor;
312
- this.cluster = cluster;
313
- }
314
- ls(path = '') {
315
- return this.execInContainerCommand('ls ' + path);
316
- }
317
- pwd() {
318
- return this.execInContainerCommand('pwd');
319
- }
320
- cd(path) {
321
- return this.execInContainerCommand('cd ' + path);
322
- }
323
- gitClone(repository) {
324
- return this.execInContainerCommand('git clone ' + repository);
325
- }
326
- removeFolder(path) {
327
- return this.execInContainerCommand('rm -rf ' + path);
328
- }
329
- };
330
- ContainerTerminal = __decorate([
331
- (0, inversify_1.injectable)(),
332
- __param(0, (0, inversify_1.inject)(inversify_types_1.CLASSES.ShellExecutor)),
333
- __param(1, (0, inversify_1.inject)(inversify_types_1.CLASSES.KubernetesCommandLineToolsExecutor)),
334
- __metadata("design:paramtypes", [ShellExecutor_1.ShellExecutor,
335
- KubernetesCommandLineToolsExecutor])
336
- ], ContainerTerminal);
337
- exports.ContainerTerminal = ContainerTerminal;
338
- //# sourceMappingURL=KubernetesCommandLineToolsExecutor.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"KubernetesCommandLineToolsExecutor.js","sourceRoot":"","sources":["../../utils/KubernetesCommandLineToolsExecutor.ts"],"names":[],"mappings":"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"}
@@ -1,146 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.Logger = void 0;
4
- /** *******************************************************************
5
- * copyright (c) 2019-2023 Red Hat, Inc.
6
- *
7
- * This program and the accompanying materials are made
8
- * available under the terms of the Eclipse Public License 2.0
9
- * which is available at https://www.eclipse.org/legal/epl-2.0/
10
- *
11
- * SPDX-License-Identifier: EPL-2.0
12
- **********************************************************************/
13
- const REPORTER_CONSTANTS_1 = require("../constants/REPORTER_CONSTANTS");
14
- const MochaHooks_1 = require("../specs/MochaHooks");
15
- class Logger {
16
- /**
17
- * uses for logging of fatal errors.
18
- * @param text log text
19
- * @param indentLevel log level
20
- */
21
- static error(text = '', indentLevel = 1) {
22
- const callerInfo = this.getCallerInfo();
23
- const logLevelSymbol = '[ERROR] ';
24
- const message = this.getFullMessage(callerInfo, text);
25
- this.logText(indentLevel, logLevelSymbol, message);
26
- if (this.sendLogMessageIntoReportPortal()) {
27
- MochaHooks_1.rpApi.error(message);
28
- }
29
- }
30
- /**
31
- * uses for logging of recoverable errors and general warnings.
32
- * @param text log text
33
- * @param indentLevel log level
34
- */
35
- static warn(text = '', indentLevel = 1) {
36
- if (REPORTER_CONSTANTS_1.REPORTER_CONSTANTS.TS_SELENIUM_LOG_LEVEL === 'ERROR') {
37
- return;
38
- }
39
- const callerInfo = this.getCallerInfo();
40
- const logLevelSymbol = '[WARN] ';
41
- const message = this.getFullMessage(callerInfo, text);
42
- this.logText(indentLevel, logLevelSymbol, message);
43
- if (this.sendLogMessageIntoReportPortal()) {
44
- MochaHooks_1.rpApi.warn(message);
45
- }
46
- }
47
- /**
48
- * uses for logging of the public methods of the pageobjects.
49
- * @param text log text
50
- * @param indentLevel log level
51
- */
52
- static info(text = '', indentLevel = 3) {
53
- if (REPORTER_CONSTANTS_1.REPORTER_CONSTANTS.TS_SELENIUM_LOG_LEVEL === 'ERROR' || REPORTER_CONSTANTS_1.REPORTER_CONSTANTS.TS_SELENIUM_LOG_LEVEL === 'WARN') {
54
- return;
55
- }
56
- const callerInfo = this.getCallerInfo();
57
- const logLevelSymbol = '• ';
58
- const message = this.getFullMessage(callerInfo, text);
59
- this.logText(indentLevel, logLevelSymbol, message);
60
- if (this.sendLogMessageIntoReportPortal()) {
61
- MochaHooks_1.rpApi.info(message);
62
- }
63
- }
64
- /**
65
- * uses for logging of the public methods of the pageobjects.
66
- * @param text log text
67
- * @param indentLevel log level
68
- */
69
- static debug(text = '', indentLevel = 5) {
70
- if (REPORTER_CONSTANTS_1.REPORTER_CONSTANTS.TS_SELENIUM_LOG_LEVEL === 'ERROR' ||
71
- REPORTER_CONSTANTS_1.REPORTER_CONSTANTS.TS_SELENIUM_LOG_LEVEL === 'WARN' ||
72
- REPORTER_CONSTANTS_1.REPORTER_CONSTANTS.TS_SELENIUM_LOG_LEVEL === 'INFO') {
73
- return;
74
- }
75
- const callerInfo = this.getCallerInfo();
76
- const logLevelSymbol = '▼ ';
77
- const message = this.getFullMessage(callerInfo, text);
78
- this.logText(indentLevel, logLevelSymbol, message);
79
- if (this.sendLogMessageIntoReportPortal()) {
80
- MochaHooks_1.rpApi.debug(message);
81
- }
82
- }
83
- /**
84
- * uses for logging of the public methods of the {@link DriverHelper} or
85
- * private methods inside of pageobjects.
86
- * @param text log text
87
- * @param indentLevel log level
88
- */
89
- static trace(text = '', indentLevel = 6) {
90
- if (REPORTER_CONSTANTS_1.REPORTER_CONSTANTS.TS_SELENIUM_LOG_LEVEL === 'ERROR' ||
91
- REPORTER_CONSTANTS_1.REPORTER_CONSTANTS.TS_SELENIUM_LOG_LEVEL === 'WARN' ||
92
- REPORTER_CONSTANTS_1.REPORTER_CONSTANTS.TS_SELENIUM_LOG_LEVEL === 'INFO' ||
93
- REPORTER_CONSTANTS_1.REPORTER_CONSTANTS.TS_SELENIUM_LOG_LEVEL === 'DEBUG') {
94
- return;
95
- }
96
- const callerInfo = this.getCallerInfo();
97
- const logLevelSymbol = '‣ ';
98
- const message = this.getFullMessage(callerInfo, text);
99
- this.logText(indentLevel, logLevelSymbol, message);
100
- if (this.sendLogMessageIntoReportPortal()) {
101
- MochaHooks_1.rpApi.trace(message);
102
- }
103
- }
104
- static getFullMessage(callerInfo, text) {
105
- return `${callerInfo}${this.separator(text, callerInfo)}${text}`;
106
- }
107
- static separator(text, caller) {
108
- return text ? (caller ? ' - ' : '') : '';
109
- }
110
- static logText(messageIndentationLevel, logLevelSymbol, text) {
111
- if (text) {
112
- // start group for every level
113
- for (let i = 0; i < messageIndentationLevel; i++) {
114
- console.group();
115
- }
116
- // print the trimmed text
117
- // if multiline, the message should be properly padded
118
- console.log(logLevelSymbol + text);
119
- // end group for every level
120
- for (let i = 0; i < messageIndentationLevel; i++) {
121
- console.groupEnd();
122
- }
123
- }
124
- }
125
- static getCallerInfo(i = 4) {
126
- const stack = this.getCallStackArray();
127
- // " at functionName ( ..." => "functionName"
128
- return stack[i].includes('.<anonymous') ? '' : stack[i].replace(/^\s+at\s+(.+?)\s.+/g, '$1');
129
- }
130
- static getCallStackArray() {
131
- const e = new Error();
132
- return e.stack ? e.stack.split('\n') : [];
133
- }
134
- static sendLogMessageIntoReportPortal() {
135
- return REPORTER_CONSTANTS_1.REPORTER_CONSTANTS.SAVE_RP_REPORT_DATA && !this.isRootCaller();
136
- }
137
- static isRootCaller(traceLevel = 6) {
138
- return this.getCallStackArray()
139
- .slice(traceLevel, traceLevel + 4)
140
- .reduce((acc, e) => {
141
- return acc || /MochaHooks|CheReporter/.test(e);
142
- }, false);
143
- }
144
- }
145
- exports.Logger = Logger;
146
- //# sourceMappingURL=Logger.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"Logger.js","sourceRoot":"","sources":["../../utils/Logger.ts"],"names":[],"mappings":"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"}
@@ -1,114 +0,0 @@
1
- "use strict";
2
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
- if (k2 === undefined) k2 = k;
4
- var desc = Object.getOwnPropertyDescriptor(m, k);
5
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
- desc = { enumerable: true, get: function() { return m[k]; } };
7
- }
8
- Object.defineProperty(o, k2, desc);
9
- }) : (function(o, m, k, k2) {
10
- if (k2 === undefined) k2 = k;
11
- o[k2] = m[k];
12
- }));
13
- var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
- Object.defineProperty(o, "default", { enumerable: true, value: v });
15
- }) : function(o, v) {
16
- o["default"] = v;
17
- });
18
- var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
19
- var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
20
- if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
21
- else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
22
- return c > 3 && r && Object.defineProperty(target, key, r), r;
23
- };
24
- var __importStar = (this && this.__importStar) || function (mod) {
25
- if (mod && mod.__esModule) return mod;
26
- var result = {};
27
- if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
28
- __setModuleDefault(result, mod);
29
- return result;
30
- };
31
- var __metadata = (this && this.__metadata) || function (k, v) {
32
- if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
33
- };
34
- var __param = (this && this.__param) || function (paramIndex, decorator) {
35
- return function (target, key) { decorator(target, key, paramIndex); }
36
- };
37
- Object.defineProperty(exports, "__esModule", { value: true });
38
- exports.ScreenCatcher = void 0;
39
- /** *******************************************************************
40
- * copyright (c) 2021-2023 Red Hat, Inc.
41
- *
42
- * This program and the accompanying materials are made
43
- * available under the terms of the Eclipse Public License 2.0
44
- * which is available at https://www.eclipse.org/legal/epl-2.0/
45
- *
46
- * SPDX-License-Identifier: EPL-2.0
47
- **********************************************************************/
48
- const fs = __importStar(require("fs"));
49
- const inversify_1 = require("inversify");
50
- const inversify_types_1 = require("../configs/inversify.types");
51
- const DriverHelper_1 = require("./DriverHelper");
52
- const selenium_webdriver_1 = require("selenium-webdriver");
53
- const StringUtil_1 = require("./StringUtil");
54
- const REPORTER_CONSTANTS_1 = require("../constants/REPORTER_CONSTANTS");
55
- let ScreenCatcher = class ScreenCatcher {
56
- constructor(driverHelper) {
57
- this.driverHelper = driverHelper;
58
- }
59
- async catchMethodScreen(methodName, methodIndex, screenshotIndex) {
60
- const executionScreenCastDir = `${REPORTER_CONSTANTS_1.REPORTER_CONSTANTS.TS_SELENIUM_REPORT_FOLDER}/executionScreencast`;
61
- const executionScreenCastErrorsDir = `${REPORTER_CONSTANTS_1.REPORTER_CONSTANTS.TS_SELENIUM_REPORT_FOLDER}/executionScreencastErrors`;
62
- const formattedMethodIndex = new Intl.NumberFormat('en-us', {
63
- minimumIntegerDigits: 3
64
- }).format(methodIndex);
65
- const formattedScreenshotIndex = new Intl.NumberFormat('en-us', { minimumIntegerDigits: 5 })
66
- .format(screenshotIndex)
67
- .replace(/,/g, '');
68
- if (!fs.existsSync(REPORTER_CONSTANTS_1.REPORTER_CONSTANTS.TS_SELENIUM_REPORT_FOLDER)) {
69
- fs.mkdirSync(REPORTER_CONSTANTS_1.REPORTER_CONSTANTS.TS_SELENIUM_REPORT_FOLDER);
70
- }
71
- if (!fs.existsSync(executionScreenCastDir)) {
72
- fs.mkdirSync(executionScreenCastDir);
73
- }
74
- const date = new Date();
75
- const timeStr = date.toLocaleTimeString('en-us', { hour12: false }) +
76
- '.' +
77
- new Intl.NumberFormat('en-us', { minimumIntegerDigits: 3 }).format(date.getMilliseconds());
78
- const screenshotPath = `${executionScreenCastDir}/${formattedMethodIndex}-${formattedScreenshotIndex}--(${StringUtil_1.StringUtil.sanitizeTitle(timeStr)})_${StringUtil_1.StringUtil.sanitizeTitle(methodName)}.png`;
79
- try {
80
- await this.catchScreen(screenshotPath);
81
- }
82
- catch (err) {
83
- if (!fs.existsSync(executionScreenCastErrorsDir)) {
84
- fs.mkdirSync(executionScreenCastErrorsDir);
85
- }
86
- let errorLogFilePath = screenshotPath.replace('.png', '.txt');
87
- errorLogFilePath = errorLogFilePath.replace(executionScreenCastDir, executionScreenCastErrorsDir);
88
- if (err instanceof selenium_webdriver_1.error.IError) {
89
- this.writeErrorLog(errorLogFilePath, err);
90
- }
91
- }
92
- }
93
- async catchScreen(screenshotPath) {
94
- const screenshot = await this.driverHelper.getDriver().takeScreenshot();
95
- const screenshotStream = fs.createWriteStream(screenshotPath);
96
- screenshotStream.write(Buffer.from(screenshot, 'base64'));
97
- screenshotStream.end();
98
- }
99
- writeErrorLog(errorLogPath, err) {
100
- console.log(`Failed to save screenshot, additional information in the ${errorLogPath}`);
101
- if (err.stack) {
102
- const screenshotStream = fs.createWriteStream(errorLogPath);
103
- screenshotStream.write(Buffer.from(err.stack, 'utf8'));
104
- screenshotStream.end();
105
- }
106
- }
107
- };
108
- ScreenCatcher = __decorate([
109
- (0, inversify_1.injectable)(),
110
- __param(0, (0, inversify_1.inject)(inversify_types_1.CLASSES.DriverHelper)),
111
- __metadata("design:paramtypes", [DriverHelper_1.DriverHelper])
112
- ], ScreenCatcher);
113
- exports.ScreenCatcher = ScreenCatcher;
114
- //# sourceMappingURL=ScreenCatcher.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"ScreenCatcher.js","sourceRoot":"","sources":["../../utils/ScreenCatcher.ts"],"names":[],"mappings":"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"}