@theia/playwright 1.55.1 → 1.57.0-next.112

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 (217) hide show
  1. package/README.md +1 -1
  2. package/package.json +13 -12
  3. package/src/tests/theia-notebook-editor.test.ts +15 -7
  4. package/src/theia-app-loader.ts +8 -12
  5. package/src/theia-workspace.ts +5 -3
  6. package/lib/index.d.ts +0 -34
  7. package/lib/index.d.ts.map +0 -1
  8. package/lib/index.js +0 -52
  9. package/lib/index.js.map +0 -1
  10. package/lib/tests/theia-app.test.d.ts +0 -2
  11. package/lib/tests/theia-app.test.d.ts.map +0 -1
  12. package/lib/tests/theia-app.test.js +0 -30
  13. package/lib/tests/theia-app.test.js.map +0 -1
  14. package/lib/tests/theia-application-shell.test.d.ts +0 -2
  15. package/lib/tests/theia-application-shell.test.d.ts.map +0 -1
  16. package/lib/tests/theia-application-shell.test.js +0 -58
  17. package/lib/tests/theia-application-shell.test.js.map +0 -1
  18. package/lib/tests/theia-explorer-view.test.d.ts +0 -2
  19. package/lib/tests/theia-explorer-view.test.d.ts.map +0 -1
  20. package/lib/tests/theia-explorer-view.test.js +0 -185
  21. package/lib/tests/theia-explorer-view.test.js.map +0 -1
  22. package/lib/tests/theia-getting-started.test.d.ts +0 -2
  23. package/lib/tests/theia-getting-started.test.d.ts.map +0 -1
  24. package/lib/tests/theia-getting-started.test.js +0 -46
  25. package/lib/tests/theia-getting-started.test.js.map +0 -1
  26. package/lib/tests/theia-main-menu.test.d.ts +0 -2
  27. package/lib/tests/theia-main-menu.test.d.ts.map +0 -1
  28. package/lib/tests/theia-main-menu.test.js +0 -111
  29. package/lib/tests/theia-main-menu.test.js.map +0 -1
  30. package/lib/tests/theia-notebook-editor.test.d.ts +0 -2
  31. package/lib/tests/theia-notebook-editor.test.d.ts.map +0 -1
  32. package/lib/tests/theia-notebook-editor.test.js +0 -266
  33. package/lib/tests/theia-notebook-editor.test.js.map +0 -1
  34. package/lib/tests/theia-output-view.test.d.ts +0 -2
  35. package/lib/tests/theia-output-view.test.d.ts.map +0 -1
  36. package/lib/tests/theia-output-view.test.js +0 -79
  37. package/lib/tests/theia-output-view.test.js.map +0 -1
  38. package/lib/tests/theia-preference-view.test.d.ts +0 -2
  39. package/lib/tests/theia-preference-view.test.d.ts.map +0 -1
  40. package/lib/tests/theia-preference-view.test.js +0 -102
  41. package/lib/tests/theia-preference-view.test.js.map +0 -1
  42. package/lib/tests/theia-problems-view.test.d.ts +0 -2
  43. package/lib/tests/theia-problems-view.test.d.ts.map +0 -1
  44. package/lib/tests/theia-problems-view.test.js +0 -55
  45. package/lib/tests/theia-problems-view.test.js.map +0 -1
  46. package/lib/tests/theia-quick-command.test.d.ts +0 -2
  47. package/lib/tests/theia-quick-command.test.d.ts.map +0 -1
  48. package/lib/tests/theia-quick-command.test.js +0 -75
  49. package/lib/tests/theia-quick-command.test.js.map +0 -1
  50. package/lib/tests/theia-sample-app.test.d.ts +0 -2
  51. package/lib/tests/theia-sample-app.test.d.ts.map +0 -1
  52. package/lib/tests/theia-sample-app.test.js +0 -58
  53. package/lib/tests/theia-sample-app.test.js.map +0 -1
  54. package/lib/tests/theia-status-bar.test.d.ts +0 -2
  55. package/lib/tests/theia-status-bar.test.d.ts.map +0 -1
  56. package/lib/tests/theia-status-bar.test.js +0 -45
  57. package/lib/tests/theia-status-bar.test.js.map +0 -1
  58. package/lib/tests/theia-terminal-view.test.d.ts +0 -2
  59. package/lib/tests/theia-terminal-view.test.d.ts.map +0 -1
  60. package/lib/tests/theia-terminal-view.test.js +0 -79
  61. package/lib/tests/theia-terminal-view.test.js.map +0 -1
  62. package/lib/tests/theia-text-editor.test.d.ts +0 -2
  63. package/lib/tests/theia-text-editor.test.d.ts.map +0 -1
  64. package/lib/tests/theia-text-editor.test.js +0 -156
  65. package/lib/tests/theia-text-editor.test.js.map +0 -1
  66. package/lib/tests/theia-toolbar.test.d.ts +0 -2
  67. package/lib/tests/theia-toolbar.test.d.ts.map +0 -1
  68. package/lib/tests/theia-toolbar.test.js +0 -62
  69. package/lib/tests/theia-toolbar.test.js.map +0 -1
  70. package/lib/tests/theia-workspace.test.d.ts +0 -2
  71. package/lib/tests/theia-workspace.test.d.ts.map +0 -1
  72. package/lib/tests/theia-workspace.test.js +0 -73
  73. package/lib/tests/theia-workspace.test.js.map +0 -1
  74. package/lib/theia-about-dialog.d.ts +0 -5
  75. package/lib/theia-about-dialog.d.ts.map +0 -1
  76. package/lib/theia-about-dialog.js +0 -27
  77. package/lib/theia-about-dialog.js.map +0 -1
  78. package/lib/theia-app-loader.d.ts +0 -20
  79. package/lib/theia-app-loader.d.ts.map +0 -1
  80. package/lib/theia-app-loader.js +0 -130
  81. package/lib/theia-app-loader.js.map +0 -1
  82. package/lib/theia-app.d.ts +0 -51
  83. package/lib/theia-app.d.ts.map +0 -1
  84. package/lib/theia-app.js +0 -154
  85. package/lib/theia-app.js.map +0 -1
  86. package/lib/theia-context-menu.d.ts +0 -9
  87. package/lib/theia-context-menu.d.ts.map +0 -1
  88. package/lib/theia-context-menu.js +0 -38
  89. package/lib/theia-context-menu.js.map +0 -1
  90. package/lib/theia-dialog.d.ts +0 -29
  91. package/lib/theia-dialog.d.ts.map +0 -1
  92. package/lib/theia-dialog.js +0 -100
  93. package/lib/theia-dialog.js.map +0 -1
  94. package/lib/theia-editor.d.ts +0 -10
  95. package/lib/theia-editor.d.ts.map +0 -1
  96. package/lib/theia-editor.js +0 -69
  97. package/lib/theia-editor.js.map +0 -1
  98. package/lib/theia-explorer-view.d.ts +0 -48
  99. package/lib/theia-explorer-view.d.ts.map +0 -1
  100. package/lib/theia-explorer-view.js +0 -274
  101. package/lib/theia-explorer-view.js.map +0 -1
  102. package/lib/theia-main-menu.d.ts +0 -13
  103. package/lib/theia-main-menu.d.ts.map +0 -1
  104. package/lib/theia-main-menu.js +0 -54
  105. package/lib/theia-main-menu.js.map +0 -1
  106. package/lib/theia-menu-item.d.ts +0 -15
  107. package/lib/theia-menu-item.d.ts.map +0 -1
  108. package/lib/theia-menu-item.js +0 -67
  109. package/lib/theia-menu-item.js.map +0 -1
  110. package/lib/theia-menu.d.ts +0 -17
  111. package/lib/theia-menu.d.ts.map +0 -1
  112. package/lib/theia-menu.js +0 -87
  113. package/lib/theia-menu.js.map +0 -1
  114. package/lib/theia-monaco-editor.d.ts +0 -30
  115. package/lib/theia-monaco-editor.d.ts.map +0 -1
  116. package/lib/theia-monaco-editor.js +0 -117
  117. package/lib/theia-monaco-editor.js.map +0 -1
  118. package/lib/theia-notebook-cell.d.ts +0 -96
  119. package/lib/theia-notebook-cell.d.ts.map +0 -1
  120. package/lib/theia-notebook-cell.js +0 -209
  121. package/lib/theia-notebook-cell.js.map +0 -1
  122. package/lib/theia-notebook-editor.d.ts +0 -50
  123. package/lib/theia-notebook-editor.d.ts.map +0 -1
  124. package/lib/theia-notebook-editor.js +0 -153
  125. package/lib/theia-notebook-editor.js.map +0 -1
  126. package/lib/theia-notebook-toolbar.d.ts +0 -13
  127. package/lib/theia-notebook-toolbar.d.ts.map +0 -1
  128. package/lib/theia-notebook-toolbar.js +0 -47
  129. package/lib/theia-notebook-toolbar.js.map +0 -1
  130. package/lib/theia-notification-indicator.d.ts +0 -8
  131. package/lib/theia-notification-indicator.d.ts.map +0 -1
  132. package/lib/theia-notification-indicator.js +0 -45
  133. package/lib/theia-notification-indicator.js.map +0 -1
  134. package/lib/theia-notification-overlay.d.ts +0 -23
  135. package/lib/theia-notification-overlay.d.ts.map +0 -1
  136. package/lib/theia-notification-overlay.js +0 -80
  137. package/lib/theia-notification-overlay.js.map +0 -1
  138. package/lib/theia-output-channel.d.ts +0 -25
  139. package/lib/theia-output-channel.d.ts.map +0 -1
  140. package/lib/theia-output-channel.js +0 -72
  141. package/lib/theia-output-channel.js.map +0 -1
  142. package/lib/theia-output-view.d.ts +0 -10
  143. package/lib/theia-output-view.d.ts.map +0 -1
  144. package/lib/theia-output-view.js +0 -82
  145. package/lib/theia-output-view.js.map +0 -1
  146. package/lib/theia-page-object.d.ts +0 -8
  147. package/lib/theia-page-object.d.ts.map +0 -1
  148. package/lib/theia-page-object.js +0 -28
  149. package/lib/theia-page-object.js.map +0 -1
  150. package/lib/theia-preference-view.d.ts +0 -91
  151. package/lib/theia-preference-view.d.ts.map +0 -1
  152. package/lib/theia-preference-view.js +0 -224
  153. package/lib/theia-preference-view.js.map +0 -1
  154. package/lib/theia-problem-indicator.d.ts +0 -9
  155. package/lib/theia-problem-indicator.d.ts.map +0 -1
  156. package/lib/theia-problem-indicator.js +0 -39
  157. package/lib/theia-problem-indicator.js.map +0 -1
  158. package/lib/theia-problem-view.d.ts +0 -6
  159. package/lib/theia-problem-view.d.ts.map +0 -1
  160. package/lib/theia-problem-view.js +0 -31
  161. package/lib/theia-problem-view.js.map +0 -1
  162. package/lib/theia-quick-command-palette.d.ts +0 -14
  163. package/lib/theia-quick-command-palette.d.ts.map +0 -1
  164. package/lib/theia-quick-command-palette.js +0 -87
  165. package/lib/theia-quick-command-palette.js.map +0 -1
  166. package/lib/theia-rename-dialog.d.ts +0 -6
  167. package/lib/theia-rename-dialog.d.ts.map +0 -1
  168. package/lib/theia-rename-dialog.js +0 -35
  169. package/lib/theia-rename-dialog.js.map +0 -1
  170. package/lib/theia-status-bar.d.ts +0 -14
  171. package/lib/theia-status-bar.d.ts.map +0 -1
  172. package/lib/theia-status-bar.js +0 -40
  173. package/lib/theia-status-bar.js.map +0 -1
  174. package/lib/theia-status-indicator.d.ts +0 -11
  175. package/lib/theia-status-indicator.d.ts.map +0 -1
  176. package/lib/theia-status-indicator.js +0 -49
  177. package/lib/theia-status-indicator.js.map +0 -1
  178. package/lib/theia-terminal.d.ts +0 -14
  179. package/lib/theia-terminal.d.ts.map +0 -1
  180. package/lib/theia-terminal.js +0 -60
  181. package/lib/theia-terminal.js.map +0 -1
  182. package/lib/theia-text-editor.d.ts +0 -27
  183. package/lib/theia-text-editor.d.ts.map +0 -1
  184. package/lib/theia-text-editor.js +0 -121
  185. package/lib/theia-text-editor.js.map +0 -1
  186. package/lib/theia-toggle-bottom-indicator.d.ts +0 -5
  187. package/lib/theia-toggle-bottom-indicator.d.ts.map +0 -1
  188. package/lib/theia-toggle-bottom-indicator.js +0 -27
  189. package/lib/theia-toggle-bottom-indicator.js.map +0 -1
  190. package/lib/theia-toolbar-item.d.ts +0 -11
  191. package/lib/theia-toolbar-item.d.ts.map +0 -1
  192. package/lib/theia-toolbar-item.js +0 -40
  193. package/lib/theia-toolbar-item.js.map +0 -1
  194. package/lib/theia-toolbar.d.ts +0 -20
  195. package/lib/theia-toolbar.d.ts.map +0 -1
  196. package/lib/theia-toolbar.js +0 -91
  197. package/lib/theia-toolbar.js.map +0 -1
  198. package/lib/theia-tree-node.d.ts +0 -20
  199. package/lib/theia-tree-node.d.ts.map +0 -1
  200. package/lib/theia-tree-node.js +0 -73
  201. package/lib/theia-tree-node.js.map +0 -1
  202. package/lib/theia-view.d.ts +0 -33
  203. package/lib/theia-view.d.ts.map +0 -1
  204. package/lib/theia-view.js +0 -150
  205. package/lib/theia-view.js.map +0 -1
  206. package/lib/theia-welcome-view.d.ts +0 -6
  207. package/lib/theia-welcome-view.d.ts.map +0 -1
  208. package/lib/theia-welcome-view.js +0 -31
  209. package/lib/theia-welcome-view.js.map +0 -1
  210. package/lib/theia-workspace.d.ts +0 -19
  211. package/lib/theia-workspace.d.ts.map +0 -1
  212. package/lib/theia-workspace.js +0 -70
  213. package/lib/theia-workspace.js.map +0 -1
  214. package/lib/util.d.ts +0 -20
  215. package/lib/util.d.ts.map +0 -1
  216. package/lib/util.js +0 -94
  217. package/lib/util.js.map +0 -1
package/README.md CHANGED
@@ -51,4 +51,4 @@ It is [extensible](./docs/EXTENSIBILITY.md) so you can add dedicated page object
51
51
  ## Trademark
52
52
 
53
53
  "Theia" is a trademark of the Eclipse Foundation
54
- https://www.eclipse.org/theia
54
+ <https://www.eclipse.org/theia>
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@theia/playwright",
3
- "version": "1.55.1",
3
+ "version": "1.57.0-next.112+f4778c273",
4
4
  "description": "System tests for Theia",
5
5
  "license": "EPL-2.0 OR GPL-2.0-only WITH Classpath-exception-2.0",
6
6
  "repository": {
@@ -12,29 +12,30 @@
12
12
  },
13
13
  "homepage": "https://github.com/eclipse-theia/theia",
14
14
  "scripts": {
15
- "clean": "rimraf lib *.tsbuildinfo .eslintcache",
16
- "build": "yarn && yarn clean && tsc --incremental && yarn lint && yarn playwright:install",
17
- "watch": "tsc -w --incremental",
18
- "theia:start": "rimraf .tmp.cfg && cross-env THEIA_CONFIG_DIR=$PWD/.tmp.cfg yarn --cwd ../browser start",
15
+ "clean": "theiaext clean",
16
+ "build": "theiaext build && npm run playwright:install",
17
+ "watch": "theiaext watch",
18
+ "theia:start": "rimraf .tmp.cfg && cd ../browser && cross-env THEIA_CONFIG_DIR=$PWD/.tmp.cfg npm run start",
19
19
  "lint": "eslint -c ./.eslintrc.js --ext .ts ./src",
20
20
  "lint:fix": "eslint -c ./.eslintrc.js --ext .ts ./src --fix",
21
21
  "playwright:install": "playwright install chromium",
22
- "ui-tests": "yarn build && playwright test --config=./configs/playwright.config.ts",
23
- "ui-tests-electron": "yarn build && cross-env USE_ELECTRON=true playwright test --config=./configs/playwright.config.ts",
24
- "ui-tests-ci": "yarn build && playwright test --config=./configs/playwright.ci.config.ts",
25
- "ui-tests-headful": "yarn build && playwright test --config=./configs/playwright.headful.config.ts",
22
+ "ui-tests": "npm run build && playwright test --config=./configs/playwright.config.ts",
23
+ "ui-tests-electron": "npm run build && cross-env USE_ELECTRON=true playwright test --config=./configs/playwright.config.ts",
24
+ "ui-tests-ci": "npm run build && playwright test --config=./configs/playwright.ci.config.ts",
25
+ "ui-tests-headful": "npm run build && playwright test --config=./configs/playwright.headful.config.ts",
26
26
  "ui-tests-report-generate": "allure generate ./allure-results --clean -o allure-results/allure-report",
27
- "ui-tests-report": "yarn ui-tests-report-generate && allure open allure-results/allure-report"
27
+ "ui-tests-report": "npm run ui-tests-report-generate && allure open allure-results/allure-report"
28
28
  },
29
29
  "files": [
30
30
  "lib",
31
31
  "src"
32
32
  ],
33
33
  "dependencies": {
34
- "@playwright/test": "^1.37.1",
34
+ "@playwright/test": "^1.47.0",
35
35
  "fs-extra": "^9.0.8"
36
36
  },
37
37
  "devDependencies": {
38
+ "@theia/cli": "1.55.0",
38
39
  "@types/fs-extra": "^9.0.8",
39
40
  "allure-commandline": "^2.23.1",
40
41
  "allure-playwright": "^2.5.0",
@@ -46,5 +47,5 @@
46
47
  "access": "public"
47
48
  },
48
49
  "main": "lib/index",
49
- "gitHead": "be4713a778be16ba831af63a6fbd43b2301e882d"
50
+ "gitHead": "f4778c2737bb75613f0e1f99da8996bad91f6e17"
50
51
  }
@@ -21,6 +21,7 @@ import { TheiaNotebookCell } from '../theia-notebook-cell';
21
21
  import { TheiaNotebookEditor } from '../theia-notebook-editor';
22
22
  import { TheiaWorkspace } from '../theia-workspace';
23
23
  import path = require('path');
24
+ import fs = require('fs');
24
25
 
25
26
  // See .github/workflows/playwright.yml for preferred python version
26
27
  const preferredKernel = process.env.CI ? 'Python 3.11' : 'Python 3';
@@ -39,7 +40,9 @@ test.describe('Theia Notebook Editor interaction', () => {
39
40
  });
40
41
 
41
42
  test.afterAll(async () => {
42
- await app.page.close();
43
+ if (app.page) {
44
+ await app.page.close();
45
+ }
43
46
  });
44
47
 
45
48
  test.afterEach(async () => {
@@ -110,9 +113,11 @@ test.describe('Theia Notebook Editor interaction', () => {
110
113
  <|>print("Line-2")
111
114
  */
112
115
  const line = await cell.editor.lineByLineNumber(1);
113
- await line?.waitForElementState('visible');
114
- await line?.click();
115
- await line?.press('ArrowRight');
116
+ expect(line, { message: 'Line number 1 should exists' }).toBeDefined();
117
+ const box = await line?.boundingBox();
118
+ console.log(`Split cell test: visible = ${await line?.isVisible()}, box = {${box?.x},${box?.y},${box?.width},${box?.height}}`);
119
+ await line!.click();
120
+ await line!.press('ArrowRight');
116
121
 
117
122
  // split cell
118
123
  await cell.splitCell();
@@ -134,7 +139,9 @@ test.describe('Theia Notebook Cell interaction', () => {
134
139
  });
135
140
 
136
141
  test.afterAll(async () => {
137
- await app.page.close();
142
+ if (app.page) {
143
+ await app.page.close();
144
+ }
138
145
  });
139
146
 
140
147
  test.beforeEach(async () => {
@@ -309,8 +316,9 @@ async function firstCell(editor: TheiaNotebookEditor): Promise<TheiaNotebookCell
309
316
 
310
317
  async function loadApp(args: TheiaPlaywrightTestConfig & PlaywrightWorkerArgs): Promise<TheiaApp> {
311
318
  const workingDir = path.resolve();
312
- // correct WS path. When running from IDE the path is playwright/configs with CLI it's playwright/
313
- const prefix = workingDir.endsWith('playwright/configs') ? '../' : '';
319
+ // correct WS path. When running from IDE the path is workspace root or playwright/configs, with CLI it's playwright/
320
+ const isWsRoot = fs.existsSync(path.join(workingDir, 'examples', 'playwright'));
321
+ const prefix = isWsRoot ? 'examples/playwright/' : (workingDir.endsWith('playwright/configs') ? '../' : '');
314
322
  const ws = new TheiaWorkspace([prefix + 'src/tests/resources/notebook-files']);
315
323
  const app = await TheiaAppLoader.load(args, ws);
316
324
  // auto-save are disabled using settings.json file
@@ -15,11 +15,8 @@
15
15
  // *****************************************************************************
16
16
 
17
17
  import { Page, PlaywrightWorkerArgs, _electron as electron } from '@playwright/test';
18
- import * as path from 'path';
19
- import * as fs from 'fs';
20
18
  import { TheiaApp } from './theia-app';
21
19
  import { TheiaWorkspace } from './theia-workspace';
22
- import { OSUtil } from './util';
23
20
 
24
21
  export interface TheiaAppFactory<T extends TheiaApp> {
25
22
  new(page: Page, initialWorkspace: TheiaWorkspace, isElectron?: boolean): T;
@@ -104,7 +101,7 @@ namespace TheiaElectronAppLoader {
104
101
  const appPath = electronConfig.electronAppPath!;
105
102
  const pluginsPath = electronConfig.pluginsPath;
106
103
  const launchOptions = electronConfig.launchOptions ?? {
107
- additionalArgs: ['--no-cluster'],
104
+ additionalArgs: ['--no-sandbox', '--no-cluster'],
108
105
  electronAppPath: appPath,
109
106
  pluginsPath: pluginsPath
110
107
  };
@@ -122,14 +119,10 @@ namespace TheiaElectronAppLoader {
122
119
  export function toPlaywrightOptions(
123
120
  electronLaunchOptions: { additionalArgs: string[], electronAppPath: string, pluginsPath?: string } | object,
124
121
  workspace?: TheiaWorkspace
125
- ): { executablePath: string, args: string[] } | object {
122
+ ): {
123
+ args: string[]
124
+ } | object {
126
125
  if ('additionalArgs' in electronLaunchOptions && 'electronAppPath' in electronLaunchOptions) {
127
- const executablePath = path.normalize(path.join(electronLaunchOptions.electronAppPath, 'node_modules/.bin/electron')) + (OSUtil.isWindows ? '.cmd' : '');
128
- if (!fs.existsSync(executablePath)) {
129
- const errorMsg = `executablePath: ${executablePath} does not exist`;
130
- console.log(errorMsg);
131
- throw new Error(errorMsg);
132
- }
133
126
  const args = [
134
127
  electronLaunchOptions.electronAppPath,
135
128
  ...electronLaunchOptions.additionalArgs,
@@ -142,7 +135,9 @@ namespace TheiaElectronAppLoader {
142
135
  args.push(workspace.path);
143
136
  }
144
137
 
145
- return { executablePath: executablePath, args: args };
138
+ return {
139
+ args: args
140
+ };
146
141
  }
147
142
  return electronLaunchOptions;
148
143
  }
@@ -159,6 +154,7 @@ export namespace TheiaAppLoader {
159
154
  // disable native elements and early window to avoid issues with the electron app
160
155
  process.env.THEIA_ELECTRON_DISABLE_NATIVE_ELEMENTS = '1';
161
156
  process.env.THEIA_ELECTRON_NO_EARLY_WINDOW = '1';
157
+ process.env.THEIA_NO_SPLASH = 'true';
162
158
  return TheiaElectronAppLoader.load(args, initialWorkspace, factory);
163
159
  }
164
160
  const page = await args.browser.newPage();
@@ -47,12 +47,14 @@ export class TheiaWorkspace {
47
47
 
48
48
  get path(): string {
49
49
  let workspacePath = this.workspacePath;
50
- if (!OSUtil.osStartsWithFileSeparator(this.workspacePath)) {
51
- workspacePath = `${OSUtil.fileSeparator}${workspacePath}`;
52
- }
50
+
53
51
  if (OSUtil.isWindows) {
54
52
  // Drive letters in windows paths have to be lower case
55
53
  workspacePath = workspacePath.replace(/.:/, matchedChar => matchedChar.toLowerCase());
54
+ } else {
55
+ if (!OSUtil.osStartsWithFileSeparator(this.workspacePath)) {
56
+ workspacePath = `${OSUtil.fileSeparator}${workspacePath}`;
57
+ }
56
58
  }
57
59
  return workspacePath;
58
60
  }
package/lib/index.d.ts DELETED
@@ -1,34 +0,0 @@
1
- export * from './theia-about-dialog';
2
- export * from './theia-app';
3
- export * from './theia-app-loader';
4
- export * from './theia-context-menu';
5
- export * from './theia-dialog';
6
- export * from './theia-editor';
7
- export * from './theia-explorer-view';
8
- export * from './theia-main-menu';
9
- export * from './theia-menu-item';
10
- export * from './theia-menu';
11
- export * from './theia-notification-indicator';
12
- export * from './theia-notification-overlay';
13
- export * from './theia-notebook-cell';
14
- export * from './theia-notebook-editor';
15
- export * from './theia-notebook-toolbar';
16
- export * from './theia-output-channel';
17
- export * from './theia-output-view';
18
- export * from './theia-page-object';
19
- export * from './theia-preference-view';
20
- export * from './theia-problem-indicator';
21
- export * from './theia-problem-view';
22
- export * from './theia-quick-command-palette';
23
- export * from './theia-rename-dialog';
24
- export * from './theia-status-bar';
25
- export * from './theia-status-indicator';
26
- export * from './theia-text-editor';
27
- export * from './theia-toggle-bottom-indicator';
28
- export * from './theia-toolbar';
29
- export * from './theia-toolbar-item';
30
- export * from './theia-tree-node';
31
- export * from './theia-view';
32
- export * from './theia-workspace';
33
- export * from './util';
34
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAgBA,cAAc,sBAAsB,CAAC;AACrC,cAAc,aAAa,CAAC;AAC5B,cAAc,oBAAoB,CAAC;AACnC,cAAc,sBAAsB,CAAC;AACrC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,uBAAuB,CAAC;AACtC,cAAc,mBAAmB,CAAC;AAClC,cAAc,mBAAmB,CAAC;AAClC,cAAc,cAAc,CAAC;AAC7B,cAAc,gCAAgC,CAAC;AAC/C,cAAc,8BAA8B,CAAC;AAC7C,cAAc,uBAAuB,CAAC;AACtC,cAAc,yBAAyB,CAAC;AACxC,cAAc,0BAA0B,CAAC;AACzC,cAAc,wBAAwB,CAAC;AACvC,cAAc,qBAAqB,CAAC;AACpC,cAAc,qBAAqB,CAAC;AACpC,cAAc,yBAAyB,CAAC;AACxC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,sBAAsB,CAAC;AACrC,cAAc,+BAA+B,CAAC;AAC9C,cAAc,uBAAuB,CAAC;AACtC,cAAc,oBAAoB,CAAC;AACnC,cAAc,0BAA0B,CAAC;AACzC,cAAc,qBAAqB,CAAC;AACpC,cAAc,iCAAiC,CAAC;AAChD,cAAc,iBAAiB,CAAC;AAChC,cAAc,sBAAsB,CAAC;AACrC,cAAc,mBAAmB,CAAC;AAClC,cAAc,cAAc,CAAC;AAC7B,cAAc,mBAAmB,CAAC;AAClC,cAAc,QAAQ,CAAC"}
package/lib/index.js DELETED
@@ -1,52 +0,0 @@
1
- "use strict";
2
- // *****************************************************************************
3
- // Copyright (C) 2022 EclipseSource and others.
4
- //
5
- // This program and the accompanying materials are made available under the
6
- // terms of the Eclipse Public License v. 2.0 which is available at
7
- // http://www.eclipse.org/legal/epl-2.0.
8
- //
9
- // This Source Code may also be made available under the following Secondary
10
- // Licenses when the conditions for such availability set forth in the Eclipse
11
- // Public License v. 2.0 are satisfied: GNU General Public License, version 2
12
- // with the GNU Classpath Exception which is available at
13
- // https://www.gnu.org/software/classpath/license.html.
14
- //
15
- // SPDX-License-Identifier: EPL-2.0 OR GPL-2.0-only WITH Classpath-exception-2.0
16
- // *****************************************************************************
17
- Object.defineProperty(exports, "__esModule", { value: true });
18
- const tslib_1 = require("tslib");
19
- tslib_1.__exportStar(require("./theia-about-dialog"), exports);
20
- tslib_1.__exportStar(require("./theia-app"), exports);
21
- tslib_1.__exportStar(require("./theia-app-loader"), exports);
22
- tslib_1.__exportStar(require("./theia-context-menu"), exports);
23
- tslib_1.__exportStar(require("./theia-dialog"), exports);
24
- tslib_1.__exportStar(require("./theia-editor"), exports);
25
- tslib_1.__exportStar(require("./theia-explorer-view"), exports);
26
- tslib_1.__exportStar(require("./theia-main-menu"), exports);
27
- tslib_1.__exportStar(require("./theia-menu-item"), exports);
28
- tslib_1.__exportStar(require("./theia-menu"), exports);
29
- tslib_1.__exportStar(require("./theia-notification-indicator"), exports);
30
- tslib_1.__exportStar(require("./theia-notification-overlay"), exports);
31
- tslib_1.__exportStar(require("./theia-notebook-cell"), exports);
32
- tslib_1.__exportStar(require("./theia-notebook-editor"), exports);
33
- tslib_1.__exportStar(require("./theia-notebook-toolbar"), exports);
34
- tslib_1.__exportStar(require("./theia-output-channel"), exports);
35
- tslib_1.__exportStar(require("./theia-output-view"), exports);
36
- tslib_1.__exportStar(require("./theia-page-object"), exports);
37
- tslib_1.__exportStar(require("./theia-preference-view"), exports);
38
- tslib_1.__exportStar(require("./theia-problem-indicator"), exports);
39
- tslib_1.__exportStar(require("./theia-problem-view"), exports);
40
- tslib_1.__exportStar(require("./theia-quick-command-palette"), exports);
41
- tslib_1.__exportStar(require("./theia-rename-dialog"), exports);
42
- tslib_1.__exportStar(require("./theia-status-bar"), exports);
43
- tslib_1.__exportStar(require("./theia-status-indicator"), exports);
44
- tslib_1.__exportStar(require("./theia-text-editor"), exports);
45
- tslib_1.__exportStar(require("./theia-toggle-bottom-indicator"), exports);
46
- tslib_1.__exportStar(require("./theia-toolbar"), exports);
47
- tslib_1.__exportStar(require("./theia-toolbar-item"), exports);
48
- tslib_1.__exportStar(require("./theia-tree-node"), exports);
49
- tslib_1.__exportStar(require("./theia-view"), exports);
50
- tslib_1.__exportStar(require("./theia-workspace"), exports);
51
- tslib_1.__exportStar(require("./util"), exports);
52
- //# sourceMappingURL=index.js.map
package/lib/index.js.map DELETED
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AAAA,gFAAgF;AAChF,+CAA+C;AAC/C,EAAE;AACF,2EAA2E;AAC3E,mEAAmE;AACnE,wCAAwC;AACxC,EAAE;AACF,4EAA4E;AAC5E,8EAA8E;AAC9E,6EAA6E;AAC7E,yDAAyD;AACzD,uDAAuD;AACvD,EAAE;AACF,gFAAgF;AAChF,gFAAgF;;;AAEhF,+DAAqC;AACrC,sDAA4B;AAC5B,6DAAmC;AACnC,+DAAqC;AACrC,yDAA+B;AAC/B,yDAA+B;AAC/B,gEAAsC;AACtC,4DAAkC;AAClC,4DAAkC;AAClC,uDAA6B;AAC7B,yEAA+C;AAC/C,uEAA6C;AAC7C,gEAAsC;AACtC,kEAAwC;AACxC,mEAAyC;AACzC,iEAAuC;AACvC,8DAAoC;AACpC,8DAAoC;AACpC,kEAAwC;AACxC,oEAA0C;AAC1C,+DAAqC;AACrC,wEAA8C;AAC9C,gEAAsC;AACtC,6DAAmC;AACnC,mEAAyC;AACzC,8DAAoC;AACpC,0EAAgD;AAChD,0DAAgC;AAChC,+DAAqC;AACrC,4DAAkC;AAClC,uDAA6B;AAC7B,4DAAkC;AAClC,iDAAuB"}
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=theia-app.test.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"theia-app.test.d.ts","sourceRoot":"","sources":["../../src/tests/theia-app.test.ts"],"names":[],"mappings":""}
@@ -1,30 +0,0 @@
1
- "use strict";
2
- // *****************************************************************************
3
- // Copyright (C) 2021 logi.cals GmbH, EclipseSource and others.
4
- //
5
- // This program and the accompanying materials are made available under the
6
- // terms of the Eclipse Public License v. 2.0 which is available at
7
- // http://www.eclipse.org/legal/epl-2.0.
8
- //
9
- // This Source Code may also be made available under the following Secondary
10
- // Licenses when the conditions for such availability set forth in the Eclipse
11
- // Public License v. 2.0 are satisfied: GNU General Public License, version 2
12
- // with the GNU Classpath Exception which is available at
13
- // https://www.gnu.org/software/classpath/license.html.
14
- //
15
- // SPDX-License-Identifier: EPL-2.0 OR GPL-2.0-only WITH Classpath-exception-2.0
16
- // *****************************************************************************
17
- Object.defineProperty(exports, "__esModule", { value: true });
18
- const test_1 = require("@playwright/test");
19
- const theia_app_loader_1 = require("../theia-app-loader");
20
- test_1.test.describe('Theia Application', () => {
21
- let app;
22
- test_1.test.afterAll(async () => {
23
- await app.page.close();
24
- });
25
- (0, test_1.test)('should load and should show main content panel', async ({ playwright, browser }) => {
26
- app = await theia_app_loader_1.TheiaAppLoader.load({ playwright, browser });
27
- (0, test_1.expect)(await app.isMainContentPanelVisible()).toBe(true);
28
- });
29
- });
30
- //# sourceMappingURL=theia-app.test.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"theia-app.test.js","sourceRoot":"","sources":["../../src/tests/theia-app.test.ts"],"names":[],"mappings":";AAAA,gFAAgF;AAChF,+DAA+D;AAC/D,EAAE;AACF,2EAA2E;AAC3E,mEAAmE;AACnE,wCAAwC;AACxC,EAAE;AACF,4EAA4E;AAC5E,8EAA8E;AAC9E,6EAA6E;AAC7E,yDAAyD;AACzD,uDAAuD;AACvD,EAAE;AACF,gFAAgF;AAChF,gFAAgF;;AAEhF,2CAAgD;AAChD,0DAAqD;AAGrD,WAAI,CAAC,QAAQ,CAAC,mBAAmB,EAAE,GAAG,EAAE;IACpC,IAAI,GAAa,CAAC;IAElB,WAAI,CAAC,QAAQ,CAAC,KAAK,IAAI,EAAE;QACrB,MAAM,GAAG,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC;IAC3B,CAAC,CAAC,CAAC;IAEH,IAAA,WAAI,EAAC,gDAAgD,EAAE,KAAK,EAAE,EAAE,UAAU,EAAE,OAAO,EAAE,EAAE,EAAE;QACrF,GAAG,GAAG,MAAM,iCAAc,CAAC,IAAI,CAAC,EAAE,UAAU,EAAE,OAAO,EAAE,CAAC,CAAC;QACzD,IAAA,aAAM,EAAC,MAAM,GAAG,CAAC,yBAAyB,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC7D,CAAC,CAAC,CAAC;AAEP,CAAC,CAAC,CAAC"}
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=theia-application-shell.test.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"theia-application-shell.test.d.ts","sourceRoot":"","sources":["../../src/tests/theia-application-shell.test.ts"],"names":[],"mappings":""}
@@ -1,58 +0,0 @@
1
- "use strict";
2
- // *****************************************************************************
3
- // Copyright (C) 2023 Toro Cloud Pty Ltd and others.
4
- //
5
- // This program and the accompanying materials are made available under the
6
- // terms of the Eclipse Public License v. 2.0 which is available at
7
- // http://www.eclipse.org/legal/epl-2.0.
8
- //
9
- // This Source Code may also be made available under the following Secondary
10
- // Licenses when the conditions for such availability set forth in the Eclipse
11
- // Public License v. 2.0 are satisfied: GNU General Public License, version 2
12
- // with the GNU Classpath Exception which is available at
13
- // https://www.gnu.org/software/classpath/license.html.
14
- //
15
- // SPDX-License-Identifier: EPL-2.0 OR GPL-2.0-only WITH Classpath-exception-2.0
16
- Object.defineProperty(exports, "__esModule", { value: true });
17
- const test_1 = require("@playwright/test");
18
- const theia_app_loader_1 = require("../theia-app-loader");
19
- const theia_explorer_view_1 = require("../theia-explorer-view");
20
- const theia_text_editor_1 = require("../theia-text-editor");
21
- const theia_welcome_view_1 = require("../theia-welcome-view");
22
- const theia_workspace_1 = require("../theia-workspace");
23
- test_1.test.describe('Theia Application Shell', () => {
24
- test_1.test.describe.configure({
25
- timeout: 120000
26
- });
27
- let app;
28
- test_1.test.beforeAll(async ({ playwright, browser }) => {
29
- const ws = new theia_workspace_1.TheiaWorkspace(['src/tests/resources/sample-files1']);
30
- app = await theia_app_loader_1.TheiaAppLoader.load({ playwright, browser }, ws);
31
- // The welcome view must be closed because the memory leak only occurs when there are
32
- // no tabs left open.
33
- const welcomeView = new theia_welcome_view_1.TheiaWelcomeView(app);
34
- if (await welcomeView.isTabVisible()) {
35
- await welcomeView.close();
36
- }
37
- });
38
- test_1.test.afterAll(async () => {
39
- await app.page.close();
40
- });
41
- /**
42
- * The aim of this test is to detect memory leaks when opening and closing editors many times.
43
- * Remove the skip and run the test, check the logs for any memory leak warnings.
44
- * It should take less than 2min to run, if it takes longer than that, just increase the timeout.
45
- */
46
- test_1.test.skip('should open and close a text editor many times', async () => {
47
- for (let i = 0; i < 200; i++) {
48
- const explorer = await app.openView(theia_explorer_view_1.TheiaExplorerView);
49
- const fileStatNode = await explorer.getFileStatNodeByLabel('sample.txt');
50
- const contextMenu = await fileStatNode.openContextMenu();
51
- await contextMenu.clickMenuItem('Open');
52
- const textEditor = new theia_text_editor_1.TheiaTextEditor('sample.txt', app);
53
- await textEditor.waitForVisible();
54
- await textEditor.close();
55
- }
56
- });
57
- });
58
- //# sourceMappingURL=theia-application-shell.test.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"theia-application-shell.test.js","sourceRoot":"","sources":["../../src/tests/theia-application-shell.test.ts"],"names":[],"mappings":";AAAA,gFAAgF;AAChF,oDAAoD;AACpD,EAAE;AACF,2EAA2E;AAC3E,mEAAmE;AACnE,wCAAwC;AACxC,EAAE;AACF,4EAA4E;AAC5E,8EAA8E;AAC9E,6EAA6E;AAC7E,yDAAyD;AACzD,uDAAuD;AACvD,EAAE;AACF,gFAAgF;;AAEhF,2CAAwC;AAExC,0DAAqD;AACrD,gEAA2D;AAC3D,4DAAuD;AACvD,8DAAyD;AACzD,wDAAoD;AAEpD,WAAI,CAAC,QAAQ,CAAC,yBAAyB,EAAE,GAAG,EAAE;IAC1C,WAAI,CAAC,QAAQ,CAAC,SAAS,CAAC;QACpB,OAAO,EAAE,MAAM;KAClB,CAAC,CAAC;IAEH,IAAI,GAAa,CAAC;IAElB,WAAI,CAAC,SAAS,CAAC,KAAK,EAAE,EAAE,UAAU,EAAE,OAAO,EAAE,EAAE,EAAE;QAC7C,MAAM,EAAE,GAAG,IAAI,gCAAc,CAAC,CAAC,mCAAmC,CAAC,CAAC,CAAC;QACrE,GAAG,GAAG,MAAM,iCAAc,CAAC,IAAI,CAAC,EAAE,UAAU,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC,CAAC;QAE7D,qFAAqF;QACrF,qBAAqB;QACrB,MAAM,WAAW,GAAG,IAAI,qCAAgB,CAAC,GAAG,CAAC,CAAC;QAE9C,IAAI,MAAM,WAAW,CAAC,YAAY,EAAE,EAAE,CAAC;YACnC,MAAM,WAAW,CAAC,KAAK,EAAE,CAAC;QAC9B,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,WAAI,CAAC,QAAQ,CAAC,KAAK,IAAI,EAAE;QACrB,MAAM,GAAG,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC;IAC3B,CAAC,CAAC,CAAC;IAEH;;;;OAIG;IACH,WAAI,CAAC,IAAI,CAAC,gDAAgD,EAAE,KAAK,IAAI,EAAE;QACnE,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC;YAC3B,MAAM,QAAQ,GAAG,MAAM,GAAG,CAAC,QAAQ,CAAC,uCAAiB,CAAC,CAAC;YAEvD,MAAM,YAAY,GAAG,MAAM,QAAQ,CAAC,sBAAsB,CAAC,YAAY,CAAC,CAAC;YACzE,MAAM,WAAW,GAAG,MAAM,YAAY,CAAC,eAAe,EAAE,CAAC;YACzD,MAAM,WAAW,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC;YAExC,MAAM,UAAU,GAAG,IAAI,mCAAe,CAAC,YAAY,EAAE,GAAG,CAAC,CAAC;YAC1D,MAAM,UAAU,CAAC,cAAc,EAAE,CAAC;YAElC,MAAM,UAAU,CAAC,KAAK,EAAE,CAAC;QAC7B,CAAC;IACL,CAAC,CAAC,CAAC;AACP,CAAC,CAAC,CAAC"}
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=theia-explorer-view.test.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"theia-explorer-view.test.d.ts","sourceRoot":"","sources":["../../src/tests/theia-explorer-view.test.ts"],"names":[],"mappings":""}
@@ -1,185 +0,0 @@
1
- "use strict";
2
- // *****************************************************************************
3
- // Copyright (C) 2021 logi.cals GmbH, EclipseSource and others.
4
- //
5
- // This program and the accompanying materials are made available under the
6
- // terms of the Eclipse Public License v. 2.0 which is available at
7
- // http://www.eclipse.org/legal/epl-2.0.
8
- //
9
- // This Source Code may also be made available under the following Secondary
10
- // Licenses when the conditions for such availability set forth in the Eclipse
11
- // Public License v. 2.0 are satisfied: GNU General Public License, version 2
12
- // with the GNU Classpath Exception which is available at
13
- // https://www.gnu.org/software/classpath/license.html.
14
- //
15
- // SPDX-License-Identifier: EPL-2.0 OR GPL-2.0-only WITH Classpath-exception-2.0
16
- // *****************************************************************************
17
- Object.defineProperty(exports, "__esModule", { value: true });
18
- const test_1 = require("@playwright/test");
19
- const theia_app_loader_1 = require("../theia-app-loader");
20
- const theia_preference_view_1 = require("../theia-preference-view");
21
- const theia_explorer_view_1 = require("../theia-explorer-view");
22
- const theia_workspace_1 = require("../theia-workspace");
23
- test_1.test.describe('Theia Explorer View', () => {
24
- let app;
25
- let explorer;
26
- test_1.test.beforeAll(async ({ playwright, browser }) => {
27
- const ws = new theia_workspace_1.TheiaWorkspace(['src/tests/resources/sample-files1']);
28
- app = await theia_app_loader_1.TheiaAppLoader.load({ playwright, browser }, ws);
29
- if (app.isElectron) {
30
- // set trash preference to off
31
- const preferenceView = await app.openPreferences(theia_preference_view_1.TheiaPreferenceView);
32
- await preferenceView.setBooleanPreferenceById(theia_preference_view_1.PreferenceIds.Files.EnableTrash, false);
33
- await preferenceView.close();
34
- }
35
- explorer = await app.openView(theia_explorer_view_1.TheiaExplorerView);
36
- await explorer.waitForVisibleFileNodes();
37
- });
38
- test_1.test.afterAll(async () => {
39
- await app.page.close();
40
- });
41
- (0, test_1.test)('should be visible and active after being opened', async () => {
42
- (0, test_1.expect)(await explorer.isTabVisible()).toBe(true);
43
- (0, test_1.expect)(await explorer.isDisplayed()).toBe(true);
44
- (0, test_1.expect)(await explorer.isActive()).toBe(true);
45
- });
46
- (0, test_1.test)("should be opened at the left and have the title 'Explorer'", async () => {
47
- (0, test_1.expect)(await explorer.isInSidePanel()).toBe(true);
48
- (0, test_1.expect)(await explorer.side()).toBe('left');
49
- (0, test_1.expect)(await explorer.title()).toBe('Explorer');
50
- });
51
- (0, test_1.test)('should be possible to close and reopen it', async () => {
52
- await explorer.close();
53
- (0, test_1.expect)(await explorer.isTabVisible()).toBe(false);
54
- explorer = await app.openView(theia_explorer_view_1.TheiaExplorerView);
55
- (0, test_1.expect)(await explorer.isTabVisible()).toBe(true);
56
- (0, test_1.expect)(await explorer.isDisplayed()).toBe(true);
57
- (0, test_1.expect)(await explorer.isActive()).toBe(true);
58
- });
59
- (0, test_1.test)('should show one folder named "sampleFolder", one named "sampleFolderCompact" and one file named "sample.txt"', async () => {
60
- await explorer.selectTreeNode('sampleFolder');
61
- (0, test_1.expect)(await explorer.isTreeNodeSelected('sampleFolder')).toBe(true);
62
- const fileStatElements = await explorer.visibleFileStatNodes(theia_explorer_view_1.DOT_FILES_FILTER);
63
- (0, test_1.expect)(fileStatElements.length).toBe(3);
64
- let file;
65
- let folder;
66
- let compactFolder;
67
- if (await fileStatElements[0].isFolder()) {
68
- folder = fileStatElements[0];
69
- compactFolder = fileStatElements[1];
70
- file = fileStatElements[2];
71
- }
72
- else {
73
- folder = fileStatElements[2];
74
- compactFolder = fileStatElements[1];
75
- file = fileStatElements[0];
76
- }
77
- (0, test_1.expect)(await folder.label()).toBe('sampleFolder');
78
- (0, test_1.expect)(await folder.isFile()).toBe(false);
79
- (0, test_1.expect)(await folder.isFolder()).toBe(true);
80
- (0, test_1.expect)(await compactFolder.label()).toBe('sampleFolderCompact');
81
- (0, test_1.expect)(await compactFolder.isFile()).toBe(false);
82
- (0, test_1.expect)(await compactFolder.isFolder()).toBe(true);
83
- (0, test_1.expect)(await file.label()).toBe('sample.txt');
84
- (0, test_1.expect)(await file.isFolder()).toBe(false);
85
- (0, test_1.expect)(await file.isFile()).toBe(true);
86
- });
87
- (0, test_1.test)('should provide file stat node by single path fragment "sample.txt"', async () => {
88
- const file = await explorer.getFileStatNodeByLabel('sample.txt');
89
- (0, test_1.expect)(await file.label()).toBe('sample.txt');
90
- (0, test_1.expect)(await file.isFolder()).toBe(false);
91
- (0, test_1.expect)(await file.isFile()).toBe(true);
92
- });
93
- (0, test_1.test)('should provide file stat nodes that can define whether they are collapsed or not and that can be expanded and collapsed', async () => {
94
- const file = await explorer.getFileStatNodeByLabel('sample.txt');
95
- (0, test_1.expect)(await file.isCollapsed()).toBe(false);
96
- const folder = await explorer.getFileStatNodeByLabel('sampleFolder');
97
- (0, test_1.expect)(await folder.isCollapsed()).toBe(true);
98
- await folder.expand();
99
- (0, test_1.expect)(await folder.isCollapsed()).toBe(false);
100
- await folder.collapse();
101
- (0, test_1.expect)(await folder.isCollapsed()).toBe(true);
102
- });
103
- (0, test_1.test)('should provide file stat node by path "sampleFolder/sampleFolder1/sampleFolder1-1/sampleFile1-1-1.txt"', async () => {
104
- const file = await explorer.fileStatNode('sampleFolder/sampleFolder1/sampleFolder1-1/sampleFile1-1-1.txt');
105
- if (!file) {
106
- throw Error('File stat node could not be retrieved by path');
107
- }
108
- (0, test_1.expect)(await file.label()).toBe('sampleFile1-1-1.txt');
109
- });
110
- (0, test_1.test)('should be able to check if compact folder "sampleFolderCompact/nestedFolder1/nestedFolder2" exists', async () => {
111
- const fileStatElements = await explorer.visibleFileStatNodes();
112
- // default setting `explorer.compactFolders=true` renders folders in a compact form - single child folders will be compressed in a combined tree element
113
- (0, test_1.expect)(await explorer.existsDirectoryNode('sampleFolderCompact/nestedFolder1/nestedFolder2', true /* compact */)).toBe(true);
114
- // the `existsDirectoryNode` function will expand the folder, hence we wait for the file nodes to increase as we expect a txt child file node
115
- await explorer.waitForFileNodesToIncrease(fileStatElements.length);
116
- });
117
- (0, test_1.test)('should provide file stat node by path of compact folder "sampleFolderCompact/nestedFolder1/nestedFolder2/sampleFile1-1.txt"', async () => {
118
- const file = await explorer.fileStatNode('sampleFolderCompact/nestedFolder1/nestedFolder2/sampleFile1-1.txt', true /* compact */);
119
- if (!file) {
120
- throw Error('File stat node could not be retrieved by path');
121
- }
122
- (0, test_1.expect)(await file.label()).toBe('sampleFile1-1.txt');
123
- });
124
- (0, test_1.test)('should open context menu on "sample.txt"', async () => {
125
- const file = await explorer.getFileStatNodeByLabel('sample.txt');
126
- const menu = await file.openContextMenu();
127
- (0, test_1.expect)(await menu.isOpen()).toBe(true);
128
- const menuItems = await menu.visibleMenuItems();
129
- (0, test_1.expect)(menuItems).toContain('Open');
130
- (0, test_1.expect)(menuItems).toContain('Delete');
131
- if (!app.isElectron) {
132
- (0, test_1.expect)(menuItems).toContain('Download');
133
- }
134
- await menu.close();
135
- (0, test_1.expect)(await menu.isOpen()).toBe(false);
136
- });
137
- (0, test_1.test)('should rename "sample.txt"', async () => {
138
- await explorer.renameNode('sample.txt', 'sample-new.txt');
139
- (0, test_1.expect)(await explorer.existsFileNode('sample-new.txt')).toBe(true);
140
- await explorer.renameNode('sample-new.txt', 'sample.txt');
141
- (0, test_1.expect)(await explorer.existsFileNode('sample.txt')).toBe(true);
142
- });
143
- (0, test_1.test)('should open context menu on nested folder segment "nestedFolder1"', async () => {
144
- (0, test_1.expect)(await explorer.existsDirectoryNode('sampleFolderCompact/nestedFolder1/nestedFolder2', true /* compact */)).toBe(true);
145
- const folder = await explorer.getFileStatNodeByLabel('sampleFolderCompact/nestedFolder1/nestedFolder2', true /* compact */);
146
- const menu = await folder.openContextMenuOnSegment('nestedFolder1');
147
- (0, test_1.expect)(await menu.isOpen()).toBe(true);
148
- const menuItems = await menu.visibleMenuItems();
149
- (0, test_1.expect)(menuItems).toContain('New File...');
150
- (0, test_1.expect)(menuItems).toContain('New Folder...');
151
- (0, test_1.expect)(menuItems).toContain('Open in Integrated Terminal');
152
- (0, test_1.expect)(menuItems).toContain('Find in Folder...');
153
- await menu.close();
154
- (0, test_1.expect)(await menu.isOpen()).toBe(false);
155
- });
156
- (0, test_1.test)('should rename compact folder "sampleFolderCompact" to "sampleDirectoryCompact', async () => {
157
- (0, test_1.expect)(await explorer.existsDirectoryNode('sampleFolderCompact/nestedFolder1/nestedFolder2', true /* compact */)).toBe(true);
158
- await explorer.renameNode('sampleFolderCompact/nestedFolder1/nestedFolder2', 'sampleDirectoryCompact', true /* confirm */, 'sampleFolderCompact' /* nodeSegmentLabel */);
159
- (0, test_1.expect)(await explorer.existsDirectoryNode('sampleDirectoryCompact/nestedFolder1/nestedFolder2', true /* compact */)).toBe(true);
160
- });
161
- // TODO These tests only seems to fail on Ubuntu - it's not clear why
162
- test_1.test.skip('should delete nested folder "sampleDirectoryCompact/nestedFolder1/nestedFolder2"', async () => {
163
- const fileStatElements = await explorer.visibleFileStatNodes();
164
- (0, test_1.expect)(await explorer.existsDirectoryNode('sampleDirectoryCompact/nestedFolder1/nestedFolder2', true /* compact */)).toBe(true);
165
- await explorer.deleteNode('sampleDirectoryCompact/nestedFolder1/nestedFolder2', true /* confirm */, 'nestedFolder2' /* nodeSegmentLabel */);
166
- await explorer.waitForFileNodesToDecrease(fileStatElements.length);
167
- const updatedFileStatElements = await explorer.visibleFileStatNodes();
168
- (0, test_1.expect)(updatedFileStatElements.length).toBe(fileStatElements.length - 1);
169
- });
170
- test_1.test.skip('should delete compact folder "sampleDirectoryCompact/nestedFolder1"', async () => {
171
- const fileStatElements = await explorer.visibleFileStatNodes();
172
- (0, test_1.expect)(await explorer.existsDirectoryNode('sampleDirectoryCompact/nestedFolder1', true /* compact */)).toBe(true);
173
- await explorer.deleteNode('sampleDirectoryCompact/nestedFolder1', true /* confirm */, 'sampleDirectoryCompact' /* nodeSegmentLabel */);
174
- await explorer.waitForFileNodesToDecrease(fileStatElements.length);
175
- const updatedFileStatElements = await explorer.visibleFileStatNodes();
176
- (0, test_1.expect)(updatedFileStatElements.length).toBe(fileStatElements.length - 1);
177
- });
178
- (0, test_1.test)('open "sample.txt" via the context menu', async () => {
179
- (0, test_1.expect)(await explorer.existsFileNode('sample.txt')).toBe(true);
180
- await explorer.clickContextMenuItem('sample.txt', ['Open']);
181
- const span = await app.page.waitForSelector('span:has-text("content line 2")');
182
- (0, test_1.expect)(await span.isVisible()).toBe(true);
183
- });
184
- });
185
- //# sourceMappingURL=theia-explorer-view.test.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"theia-explorer-view.test.js","sourceRoot":"","sources":["../../src/tests/theia-explorer-view.test.ts"],"names":[],"mappings":";AAAA,gFAAgF;AAChF,+DAA+D;AAC/D,EAAE;AACF,2EAA2E;AAC3E,mEAAmE;AACnE,wCAAwC;AACxC,EAAE;AACF,4EAA4E;AAC5E,8EAA8E;AAC9E,6EAA6E;AAC7E,yDAAyD;AACzD,uDAAuD;AACvD,EAAE;AACF,gFAAgF;AAChF,gFAAgF;;AAEhF,2CAAgD;AAChD,0DAAqD;AAErD,oEAA8E;AAC9E,gEAA6E;AAC7E,wDAAoD;AAEpD,WAAI,CAAC,QAAQ,CAAC,qBAAqB,EAAE,GAAG,EAAE;IAEtC,IAAI,GAAa,CAAC;IAClB,IAAI,QAA2B,CAAC;IAEhC,WAAI,CAAC,SAAS,CAAC,KAAK,EAAE,EAAE,UAAU,EAAE,OAAO,EAAE,EAAE,EAAE;QAC7C,MAAM,EAAE,GAAG,IAAI,gCAAc,CAAC,CAAC,mCAAmC,CAAC,CAAC,CAAC;QACrE,GAAG,GAAG,MAAM,iCAAc,CAAC,IAAI,CAAC,EAAE,UAAU,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC,CAAC;QAE7D,IAAI,GAAG,CAAC,UAAU,EAAE,CAAC;YACjB,8BAA8B;YAC9B,MAAM,cAAc,GAAG,MAAM,GAAG,CAAC,eAAe,CAAC,2CAAmB,CAAC,CAAC;YACtE,MAAM,cAAc,CAAC,wBAAwB,CAAC,qCAAa,CAAC,KAAK,CAAC,WAAW,EAAE,KAAK,CAAC,CAAC;YACtF,MAAM,cAAc,CAAC,KAAK,EAAE,CAAC;QACjC,CAAC;QAED,QAAQ,GAAG,MAAM,GAAG,CAAC,QAAQ,CAAC,uCAAiB,CAAC,CAAC;QACjD,MAAM,QAAQ,CAAC,uBAAuB,EAAE,CAAC;IAC7C,CAAC,CAAC,CAAC;IAEH,WAAI,CAAC,QAAQ,CAAC,KAAK,IAAI,EAAE;QACrB,MAAM,GAAG,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC;IAC3B,CAAC,CAAC,CAAC;IAEH,IAAA,WAAI,EAAC,iDAAiD,EAAE,KAAK,IAAI,EAAE;QAC/D,IAAA,aAAM,EAAC,MAAM,QAAQ,CAAC,YAAY,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACjD,IAAA,aAAM,EAAC,MAAM,QAAQ,CAAC,WAAW,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAChD,IAAA,aAAM,EAAC,MAAM,QAAQ,CAAC,QAAQ,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACjD,CAAC,CAAC,CAAC;IAEH,IAAA,WAAI,EAAC,4DAA4D,EAAE,KAAK,IAAI,EAAE;QAC1E,IAAA,aAAM,EAAC,MAAM,QAAQ,CAAC,aAAa,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAClD,IAAA,aAAM,EAAC,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAC3C,IAAA,aAAM,EAAC,MAAM,QAAQ,CAAC,KAAK,EAAE,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;IACpD,CAAC,CAAC,CAAC;IAEH,IAAA,WAAI,EAAC,2CAA2C,EAAE,KAAK,IAAI,EAAE;QACzD,MAAM,QAAQ,CAAC,KAAK,EAAE,CAAC;QACvB,IAAA,aAAM,EAAC,MAAM,QAAQ,CAAC,YAAY,EAAE,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAElD,QAAQ,GAAG,MAAM,GAAG,CAAC,QAAQ,CAAC,uCAAiB,CAAC,CAAC;QACjD,IAAA,aAAM,EAAC,MAAM,QAAQ,CAAC,YAAY,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACjD,IAAA,aAAM,EAAC,MAAM,QAAQ,CAAC,WAAW,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAChD,IAAA,aAAM,EAAC,MAAM,QAAQ,CAAC,QAAQ,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACjD,CAAC,CAAC,CAAC;IAEH,IAAA,WAAI,EAAC,8GAA8G,EAAE,KAAK,IAAI,EAAE;QAC5H,MAAM,QAAQ,CAAC,cAAc,CAAC,cAAc,CAAC,CAAC;QAC9C,IAAA,aAAM,EAAC,MAAM,QAAQ,CAAC,kBAAkB,CAAC,cAAc,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACrE,MAAM,gBAAgB,GAAG,MAAM,QAAQ,CAAC,oBAAoB,CAAC,sCAAgB,CAAC,CAAC;QAC/E,IAAA,aAAM,EAAC,gBAAgB,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAExC,IAAI,IAAI,CAAC;QAAC,IAAI,MAAM,CAAC;QAAC,IAAI,aAAa,CAAC;QACxC,IAAI,MAAM,gBAAgB,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC;YACvC,MAAM,GAAG,gBAAgB,CAAC,CAAC,CAAC,CAAC;YAC7B,aAAa,GAAG,gBAAgB,CAAC,CAAC,CAAC,CAAC;YACpC,IAAI,GAAG,gBAAgB,CAAC,CAAC,CAAC,CAAC;QAC/B,CAAC;aAAM,CAAC;YACJ,MAAM,GAAG,gBAAgB,CAAC,CAAC,CAAC,CAAC;YAC7B,aAAa,GAAG,gBAAgB,CAAC,CAAC,CAAC,CAAC;YACpC,IAAI,GAAG,gBAAgB,CAAC,CAAC,CAAC,CAAC;QAC/B,CAAC;QAED,IAAA,aAAM,EAAC,MAAM,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;QAClD,IAAA,aAAM,EAAC,MAAM,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAC1C,IAAA,aAAM,EAAC,MAAM,MAAM,CAAC,QAAQ,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC3C,IAAA,aAAM,EAAC,MAAM,aAAa,CAAC,KAAK,EAAE,CAAC,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAAC;QAChE,IAAA,aAAM,EAAC,MAAM,aAAa,CAAC,MAAM,EAAE,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACjD,IAAA,aAAM,EAAC,MAAM,aAAa,CAAC,QAAQ,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAClD,IAAA,aAAM,EAAC,MAAM,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;QAC9C,IAAA,aAAM,EAAC,MAAM,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAC1C,IAAA,aAAM,EAAC,MAAM,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC3C,CAAC,CAAC,CAAC;IAEH,IAAA,WAAI,EAAC,oEAAoE,EAAE,KAAK,IAAI,EAAE;QAClF,MAAM,IAAI,GAAG,MAAM,QAAQ,CAAC,sBAAsB,CAAC,YAAY,CAAC,CAAC;QACjE,IAAA,aAAM,EAAC,MAAM,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;QAC9C,IAAA,aAAM,EAAC,MAAM,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAC1C,IAAA,aAAM,EAAC,MAAM,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC3C,CAAC,CAAC,CAAC;IAEH,IAAA,WAAI,EAAC,yHAAyH,EAAE,KAAK,IAAI,EAAE;QACvI,MAAM,IAAI,GAAG,MAAM,QAAQ,CAAC,sBAAsB,CAAC,YAAY,CAAC,CAAC;QACjE,IAAA,aAAM,EAAC,MAAM,IAAI,CAAC,WAAW,EAAE,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAE7C,MAAM,MAAM,GAAG,MAAM,QAAQ,CAAC,sBAAsB,CAAC,cAAc,CAAC,CAAC;QACrE,IAAA,aAAM,EAAC,MAAM,MAAM,CAAC,WAAW,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAE9C,MAAM,MAAM,CAAC,MAAM,EAAE,CAAC;QACtB,IAAA,aAAM,EAAC,MAAM,MAAM,CAAC,WAAW,EAAE,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAE/C,MAAM,MAAM,CAAC,QAAQ,EAAE,CAAC;QACxB,IAAA,aAAM,EAAC,MAAM,MAAM,CAAC,WAAW,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAClD,CAAC,CAAC,CAAC;IAEH,IAAA,WAAI,EAAC,wGAAwG,EAAE,KAAK,IAAI,EAAE;QACtH,MAAM,IAAI,GAAG,MAAM,QAAQ,CAAC,YAAY,CAAC,gEAAgE,CAAC,CAAC;QAC3G,IAAI,CAAC,IAAI,EAAE,CAAC;YAAC,MAAM,KAAK,CAAC,+CAA+C,CAAC,CAAC;QAAC,CAAC;QAC5E,IAAA,aAAM,EAAC,MAAM,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAAC;IAC3D,CAAC,CAAC,CAAC;IAEH,IAAA,WAAI,EAAC,oGAAoG,EAAE,KAAK,IAAI,EAAE;QAClH,MAAM,gBAAgB,GAAG,MAAM,QAAQ,CAAC,oBAAoB,EAAE,CAAC;QAC/D,wJAAwJ;QACxJ,IAAA,aAAM,EAAC,MAAM,QAAQ,CAAC,mBAAmB,CAAC,iDAAiD,EAAE,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC7H,6IAA6I;QAC7I,MAAM,QAAQ,CAAC,0BAA0B,CAAC,gBAAgB,CAAC,MAAM,CAAC,CAAC;IACvE,CAAC,CAAC,CAAC;IAEH,IAAA,WAAI,EAAC,6HAA6H,EAAE,KAAK,IAAI,EAAE;QAC3I,MAAM,IAAI,GAAG,MAAM,QAAQ,CAAC,YAAY,CAAC,mEAAmE,EAAE,IAAI,CAAC,aAAa,CAAC,CAAC;QAClI,IAAI,CAAC,IAAI,EAAE,CAAC;YAAC,MAAM,KAAK,CAAC,+CAA+C,CAAC,CAAC;QAAC,CAAC;QAC5E,IAAA,aAAM,EAAC,MAAM,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC;IACzD,CAAC,CAAC,CAAC;IAEH,IAAA,WAAI,EAAC,0CAA0C,EAAE,KAAK,IAAI,EAAE;QACxD,MAAM,IAAI,GAAG,MAAM,QAAQ,CAAC,sBAAsB,CAAC,YAAY,CAAC,CAAC;QACjE,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,eAAe,EAAE,CAAC;QAC1C,IAAA,aAAM,EAAC,MAAM,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAEvC,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,gBAAgB,EAAE,CAAC;QAChD,IAAA,aAAM,EAAC,SAAS,CAAC,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;QACpC,IAAA,aAAM,EAAC,SAAS,CAAC,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;QACtC,IAAI,CAAC,GAAG,CAAC,UAAU,EAAE,CAAC;YAClB,IAAA,aAAM,EAAC,SAAS,CAAC,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC;QAC5C,CAAC;QAED,MAAM,IAAI,CAAC,KAAK,EAAE,CAAC;QACnB,IAAA,aAAM,EAAC,MAAM,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAC5C,CAAC,CAAC,CAAC;IAEH,IAAA,WAAI,EAAC,4BAA4B,EAAE,KAAK,IAAI,EAAE;QAC1C,MAAM,QAAQ,CAAC,UAAU,CAAC,YAAY,EAAE,gBAAgB,CAAC,CAAC;QAC1D,IAAA,aAAM,EAAC,MAAM,QAAQ,CAAC,cAAc,CAAC,gBAAgB,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACnE,MAAM,QAAQ,CAAC,UAAU,CAAC,gBAAgB,EAAE,YAAY,CAAC,CAAC;QAC1D,IAAA,aAAM,EAAC,MAAM,QAAQ,CAAC,cAAc,CAAC,YAAY,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACnE,CAAC,CAAC,CAAC;IAEH,IAAA,WAAI,EAAC,mEAAmE,EAAE,KAAK,IAAI,EAAE;QACjF,IAAA,aAAM,EAAC,MAAM,QAAQ,CAAC,mBAAmB,CAAC,iDAAiD,EAAE,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC7H,MAAM,MAAM,GAAG,MAAM,QAAQ,CAAC,sBAAsB,CAAC,iDAAiD,EAAE,IAAI,CAAC,aAAa,CAAC,CAAC;QAC5H,MAAM,IAAI,GAAG,MAAM,MAAM,CAAC,wBAAwB,CAAC,eAAe,CAAC,CAAC;QACpE,IAAA,aAAM,EAAC,MAAM,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAEvC,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,gBAAgB,EAAE,CAAC;QAChD,IAAA,aAAM,EAAC,SAAS,CAAC,CAAC,SAAS,CAAC,aAAa,CAAC,CAAC;QAC3C,IAAA,aAAM,EAAC,SAAS,CAAC,CAAC,SAAS,CAAC,eAAe,CAAC,CAAC;QAC7C,IAAA,aAAM,EAAC,SAAS,CAAC,CAAC,SAAS,CAAC,6BAA6B,CAAC,CAAC;QAC3D,IAAA,aAAM,EAAC,SAAS,CAAC,CAAC,SAAS,CAAC,mBAAmB,CAAC,CAAC;QAEjD,MAAM,IAAI,CAAC,KAAK,EAAE,CAAC;QACnB,IAAA,aAAM,EAAC,MAAM,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAC5C,CAAC,CAAC,CAAC;IAEH,IAAA,WAAI,EAAC,+EAA+E,EAAE,KAAK,IAAI,EAAE;QAC7F,IAAA,aAAM,EAAC,MAAM,QAAQ,CAAC,mBAAmB,CAAC,iDAAiD,EAAE,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC7H,MAAM,QAAQ,CAAC,UAAU,CACrB,iDAAiD,EAAE,wBAAwB,EAC3E,IAAI,CAAC,aAAa,EAAE,qBAAqB,CAAC,sBAAsB,CAAC,CAAC;QACtE,IAAA,aAAM,EAAC,MAAM,QAAQ,CAAC,mBAAmB,CAAC,oDAAoD,EAAE,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACpI,CAAC,CAAC,CAAC;IAEH,qEAAqE;IACrE,WAAI,CAAC,IAAI,CAAC,kFAAkF,EAAE,KAAK,IAAI,EAAE;QACrG,MAAM,gBAAgB,GAAG,MAAM,QAAQ,CAAC,oBAAoB,EAAE,CAAC;QAC/D,IAAA,aAAM,EAAC,MAAM,QAAQ,CAAC,mBAAmB,CAAC,oDAAoD,EAAE,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAChI,MAAM,QAAQ,CAAC,UAAU,CAAC,oDAAoD,EAAE,IAAI,CAAC,aAAa,EAAE,eAAe,CAAC,sBAAsB,CAAC,CAAC;QAC5I,MAAM,QAAQ,CAAC,0BAA0B,CAAC,gBAAgB,CAAC,MAAM,CAAC,CAAC;QACnE,MAAM,uBAAuB,GAAG,MAAM,QAAQ,CAAC,oBAAoB,EAAE,CAAC;QACtE,IAAA,aAAM,EAAC,uBAAuB,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,gBAAgB,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;IAC7E,CAAC,CAAC,CAAC;IAEH,WAAI,CAAC,IAAI,CAAC,qEAAqE,EAAE,KAAK,IAAI,EAAE;QACxF,MAAM,gBAAgB,GAAG,MAAM,QAAQ,CAAC,oBAAoB,EAAE,CAAC;QAC/D,IAAA,aAAM,EAAC,MAAM,QAAQ,CAAC,mBAAmB,CAAC,sCAAsC,EAAE,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAClH,MAAM,QAAQ,CAAC,UAAU,CAAC,sCAAsC,EAAE,IAAI,CAAC,aAAa,EAAE,wBAAwB,CAAC,sBAAsB,CAAC,CAAC;QACvI,MAAM,QAAQ,CAAC,0BAA0B,CAAC,gBAAgB,CAAC,MAAM,CAAC,CAAC;QACnE,MAAM,uBAAuB,GAAG,MAAM,QAAQ,CAAC,oBAAoB,EAAE,CAAC;QACtE,IAAA,aAAM,EAAC,uBAAuB,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,gBAAgB,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;IAC7E,CAAC,CAAC,CAAC;IAEH,IAAA,WAAI,EAAC,wCAAwC,EAAE,KAAK,IAAI,EAAE;QACtD,IAAA,aAAM,EAAC,MAAM,QAAQ,CAAC,cAAc,CAAC,YAAY,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC/D,MAAM,QAAQ,CAAC,oBAAoB,CAAC,YAAY,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC;QAC5D,MAAM,IAAI,GAAG,MAAM,GAAG,CAAC,IAAI,CAAC,eAAe,CAAC,iCAAiC,CAAC,CAAC;QAC/E,IAAA,aAAM,EAAC,MAAM,IAAI,CAAC,SAAS,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC9C,CAAC,CAAC,CAAC;AAEP,CAAC,CAAC,CAAC"}
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=theia-getting-started.test.d.ts.map