@theia/playwright 1.48.1 → 1.48.2

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 (159) hide show
  1. package/README.md +54 -54
  2. package/lib/index.d.ts +30 -30
  3. package/lib/index.js +48 -48
  4. package/lib/tests/theia-app.test.d.ts +1 -1
  5. package/lib/tests/theia-app.test.js +29 -29
  6. package/lib/tests/theia-application-shell.test.d.ts +1 -1
  7. package/lib/tests/theia-application-shell.test.js +57 -57
  8. package/lib/tests/theia-explorer-view.test.d.ts +1 -1
  9. package/lib/tests/theia-explorer-view.test.js +183 -183
  10. package/lib/tests/theia-getting-started.test.d.ts +1 -1
  11. package/lib/tests/theia-getting-started.test.js +45 -45
  12. package/lib/tests/theia-main-menu.test.d.ts +1 -1
  13. package/lib/tests/theia-main-menu.test.js +111 -111
  14. package/lib/tests/theia-output-view.test.d.ts +1 -1
  15. package/lib/tests/theia-output-view.test.js +78 -78
  16. package/lib/tests/theia-preference-view.test.d.ts +1 -1
  17. package/lib/tests/theia-preference-view.test.js +101 -101
  18. package/lib/tests/theia-problems-view.test.d.ts +1 -1
  19. package/lib/tests/theia-problems-view.test.js +54 -54
  20. package/lib/tests/theia-quick-command.test.d.ts +1 -1
  21. package/lib/tests/theia-quick-command.test.js +69 -69
  22. package/lib/tests/theia-sample-app.test.d.ts +1 -1
  23. package/lib/tests/theia-sample-app.test.js +57 -57
  24. package/lib/tests/theia-status-bar.test.d.ts +1 -1
  25. package/lib/tests/theia-status-bar.test.js +44 -44
  26. package/lib/tests/theia-terminal-view.test.d.ts +1 -1
  27. package/lib/tests/theia-terminal-view.test.js +78 -78
  28. package/lib/tests/theia-text-editor.test.d.ts +1 -1
  29. package/lib/tests/theia-text-editor.test.js +155 -155
  30. package/lib/tests/theia-toolbar.test.d.ts +1 -1
  31. package/lib/tests/theia-toolbar.test.js +61 -61
  32. package/lib/tests/theia-workspace.test.d.ts +1 -1
  33. package/lib/tests/theia-workspace.test.js +72 -72
  34. package/lib/theia-about-dialog.d.ts +4 -4
  35. package/lib/theia-about-dialog.js +26 -26
  36. package/lib/theia-app-loader.d.ts +19 -19
  37. package/lib/theia-app-loader.js +129 -129
  38. package/lib/theia-app.d.ts +50 -50
  39. package/lib/theia-app.js +153 -153
  40. package/lib/theia-context-menu.d.ts +8 -8
  41. package/lib/theia-context-menu.js +37 -37
  42. package/lib/theia-dialog.d.ts +28 -28
  43. package/lib/theia-dialog.js +99 -99
  44. package/lib/theia-editor.d.ts +9 -9
  45. package/lib/theia-editor.js +68 -68
  46. package/lib/theia-explorer-view.d.ts +47 -47
  47. package/lib/theia-explorer-view.js +273 -273
  48. package/lib/theia-main-menu.d.ts +12 -12
  49. package/lib/theia-main-menu.js +53 -53
  50. package/lib/theia-menu-item.d.ts +14 -14
  51. package/lib/theia-menu-item.js +66 -66
  52. package/lib/theia-menu.d.ts +16 -16
  53. package/lib/theia-menu.js +86 -86
  54. package/lib/theia-monaco-editor.d.ts +15 -15
  55. package/lib/theia-monaco-editor.js +75 -75
  56. package/lib/theia-notification-indicator.d.ts +7 -7
  57. package/lib/theia-notification-indicator.js +44 -44
  58. package/lib/theia-notification-overlay.d.ts +22 -22
  59. package/lib/theia-notification-overlay.js +79 -79
  60. package/lib/theia-output-channel.d.ts +24 -24
  61. package/lib/theia-output-channel.js +71 -71
  62. package/lib/theia-output-view.d.ts +9 -9
  63. package/lib/theia-output-view.js +81 -81
  64. package/lib/theia-page-object.d.ts +7 -7
  65. package/lib/theia-page-object.js +27 -27
  66. package/lib/theia-preference-view.d.ts +84 -84
  67. package/lib/theia-preference-view.js +209 -209
  68. package/lib/theia-problem-indicator.d.ts +8 -8
  69. package/lib/theia-problem-indicator.js +38 -38
  70. package/lib/theia-problem-view.d.ts +5 -5
  71. package/lib/theia-problem-view.js +30 -30
  72. package/lib/theia-quick-command-palette.d.ts +12 -12
  73. package/lib/theia-quick-command-palette.js +78 -78
  74. package/lib/theia-rename-dialog.d.ts +5 -5
  75. package/lib/theia-rename-dialog.js +34 -34
  76. package/lib/theia-status-bar.d.ts +13 -13
  77. package/lib/theia-status-bar.js +39 -39
  78. package/lib/theia-status-indicator.d.ts +10 -10
  79. package/lib/theia-status-indicator.js +48 -48
  80. package/lib/theia-terminal.d.ts +13 -13
  81. package/lib/theia-terminal.js +59 -59
  82. package/lib/theia-text-editor.d.ts +26 -26
  83. package/lib/theia-text-editor.js +120 -120
  84. package/lib/theia-toggle-bottom-indicator.d.ts +4 -4
  85. package/lib/theia-toggle-bottom-indicator.js +26 -26
  86. package/lib/theia-toolbar-item.d.ts +10 -10
  87. package/lib/theia-toolbar-item.js +39 -39
  88. package/lib/theia-toolbar.d.ts +19 -19
  89. package/lib/theia-toolbar.js +90 -90
  90. package/lib/theia-tree-node.d.ts +19 -19
  91. package/lib/theia-tree-node.js +72 -72
  92. package/lib/theia-view.d.ts +32 -32
  93. package/lib/theia-view.js +149 -149
  94. package/lib/theia-welcome-view.d.ts +5 -5
  95. package/lib/theia-welcome-view.js +30 -30
  96. package/lib/theia-workspace.d.ts +18 -18
  97. package/lib/theia-workspace.js +69 -69
  98. package/lib/util.d.ts +19 -19
  99. package/lib/util.js +93 -93
  100. package/package.json +2 -2
  101. package/src/index.ts +46 -46
  102. package/src/tests/resources/sample-files1/sample.txt +4 -4
  103. package/src/tests/resources/sample-files1/sampleFolder/sampleFolder1/sampleFolder1-1/sampleFile1-1-1.txt +1 -1
  104. package/src/tests/resources/sample-files1/sampleFolder/sampleFolder1/sampleFolder1-1/sampleFile1-1-2.txt +1 -1
  105. package/src/tests/resources/sample-files1/sampleFolder/sampleFolder1/sampleFolder1-2/sampleFile1-2-1.txt +1 -1
  106. package/src/tests/resources/sample-files1/sampleFolder/sampleFolder1/sampleFolder1-2/sampleFile1-2-2.txt +1 -1
  107. package/src/tests/resources/sample-files1/sampleFolder/sampleFolder2/sampleFolder2-1/sampleFile2-1-1.txt +1 -1
  108. package/src/tests/resources/sample-files1/sampleFolder/sampleFolder2/sampleFolder2-1/sampleFile2-1-2.txt +1 -1
  109. package/src/tests/resources/sample-files1/sampleFolder/sampleFolder2/sampleFolder2-2/sampleFile2-2-1.txt +1 -1
  110. package/src/tests/resources/sample-files1/sampleFolder/sampleFolder2/sampleFolder2-2/sampleFile2-2-2.txt +1 -1
  111. package/src/tests/resources/sample-files2/another-sample.txt +1 -1
  112. package/src/tests/theia-app.test.ts +33 -33
  113. package/src/tests/theia-application-shell.test.ts +67 -67
  114. package/src/tests/theia-explorer-view.test.ts +211 -211
  115. package/src/tests/theia-getting-started.test.ts +50 -50
  116. package/src/tests/theia-main-menu.test.ts +133 -133
  117. package/src/tests/theia-output-view.test.ts +85 -85
  118. package/src/tests/theia-preference-view.test.ts +122 -122
  119. package/src/tests/theia-problems-view.test.ts +64 -64
  120. package/src/tests/theia-quick-command.test.ts +80 -80
  121. package/src/tests/theia-sample-app.test.ts +66 -66
  122. package/src/tests/theia-status-bar.test.ts +52 -52
  123. package/src/tests/theia-terminal-view.test.ts +90 -90
  124. package/src/tests/theia-text-editor.test.ts +187 -187
  125. package/src/tests/theia-toolbar.test.ts +69 -69
  126. package/src/tests/theia-workspace.test.ts +80 -80
  127. package/src/theia-about-dialog.ts +26 -26
  128. package/src/theia-app-loader.ts +167 -167
  129. package/src/theia-app.ts +188 -188
  130. package/src/theia-context-menu.ts +42 -42
  131. package/src/theia-dialog.ts +114 -114
  132. package/src/theia-editor.ts +73 -73
  133. package/src/theia-explorer-view.ts +311 -311
  134. package/src/theia-main-menu.ts +54 -54
  135. package/src/theia-menu-item.ts +75 -75
  136. package/src/theia-menu.ts +96 -96
  137. package/src/theia-monaco-editor.ts +83 -83
  138. package/src/theia-notification-indicator.ts +44 -44
  139. package/src/theia-notification-overlay.ts +94 -94
  140. package/src/theia-output-channel.ts +88 -88
  141. package/src/theia-output-view.ts +87 -87
  142. package/src/theia-page-object.ts +29 -29
  143. package/src/theia-preference-view.ts +240 -240
  144. package/src/theia-problem-indicator.ts +37 -37
  145. package/src/theia-problem-view.ts +30 -30
  146. package/src/theia-quick-command-palette.ts +81 -81
  147. package/src/theia-rename-dialog.ts +35 -35
  148. package/src/theia-status-bar.ts +44 -44
  149. package/src/theia-status-indicator.ts +50 -50
  150. package/src/theia-terminal.ts +69 -69
  151. package/src/theia-text-editor.ts +141 -141
  152. package/src/theia-toggle-bottom-indicator.ts +21 -21
  153. package/src/theia-toolbar-item.ts +41 -41
  154. package/src/theia-toolbar.ts +99 -99
  155. package/src/theia-tree-node.ts +81 -81
  156. package/src/theia-view.ts +177 -177
  157. package/src/theia-welcome-view.ts +31 -31
  158. package/src/theia-workspace.ts +76 -76
  159. package/src/util.ts +91 -91
package/lib/util.js CHANGED
@@ -1,94 +1,94 @@
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
- exports.OSUtil = exports.elementId = exports.isElementVisible = exports.elementContainsClass = exports.containsClass = exports.textContent = exports.isNotNull = exports.isDefined = exports.toTextContentArray = exports.urlEncodePath = exports.normalizeId = exports.USER_KEY_TYPING_DELAY = void 0;
19
- const os_1 = require("os");
20
- const path_1 = require("path");
21
- exports.USER_KEY_TYPING_DELAY = 80;
22
- function normalizeId(nodeId) {
23
- // Special characters (i.e. in our case '.',':','/','%', and '\\') in CSS IDs have to be escaped
24
- return nodeId.replace(/[.:,%/\\]/g, matchedChar => '\\' + matchedChar);
25
- }
26
- exports.normalizeId = normalizeId;
27
- function urlEncodePath(path) {
28
- return path.replace(/\\/g, '/');
29
- }
30
- exports.urlEncodePath = urlEncodePath;
31
- async function toTextContentArray(items) {
32
- const contents = items.map(item => item.textContent());
33
- const resolvedContents = await Promise.all(contents);
34
- return resolvedContents.filter(text => text !== undefined);
35
- }
36
- exports.toTextContentArray = toTextContentArray;
37
- function isDefined(content) {
38
- return content !== undefined;
39
- }
40
- exports.isDefined = isDefined;
41
- function isNotNull(content) {
42
- return content !== null;
43
- }
44
- exports.isNotNull = isNotNull;
45
- async function textContent(elementPromise) {
46
- const element = await elementPromise;
47
- if (!element) {
48
- return undefined;
49
- }
50
- const content = await element.textContent();
51
- return content ? content : undefined;
52
- }
53
- exports.textContent = textContent;
54
- async function containsClass(elementPromise, cssClass) {
55
- return elementContainsClass(await elementPromise, cssClass);
56
- }
57
- exports.containsClass = containsClass;
58
- async function elementContainsClass(element, cssClass) {
59
- if (element) {
60
- const classValue = await element.getAttribute('class');
61
- if (classValue) {
62
- return classValue === null || classValue === void 0 ? void 0 : classValue.split(' ').includes(cssClass);
63
- }
64
- }
65
- return false;
66
- }
67
- exports.elementContainsClass = elementContainsClass;
68
- async function isElementVisible(elementPromise) {
69
- const element = await elementPromise;
70
- return element ? element.isVisible() : false;
71
- }
72
- exports.isElementVisible = isElementVisible;
73
- async function elementId(element) {
74
- const id = await element.getAttribute('id');
75
- if (id === null) {
76
- throw new Error('Could not get ID of ' + element);
77
- }
78
- return id;
79
- }
80
- exports.elementId = elementId;
81
- var OSUtil;
82
- (function (OSUtil) {
83
- OSUtil.isWindows = (0, os_1.platform)() === 'win32';
84
- OSUtil.isMacOS = (0, os_1.platform)() === 'darwin';
85
- // The platform-specific file separator '\' or '/'.
86
- OSUtil.fileSeparator = path_1.sep;
87
- // The platform-specific location of the temporary directory.
88
- OSUtil.tmpDir = (0, os_1.tmpdir)();
89
- function osStartsWithFileSeparator(path) {
90
- return path.startsWith(OSUtil.fileSeparator);
91
- }
92
- OSUtil.osStartsWithFileSeparator = osStartsWithFileSeparator;
93
- })(OSUtil = exports.OSUtil || (exports.OSUtil = {}));
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
+ exports.OSUtil = exports.elementId = exports.isElementVisible = exports.elementContainsClass = exports.containsClass = exports.textContent = exports.isNotNull = exports.isDefined = exports.toTextContentArray = exports.urlEncodePath = exports.normalizeId = exports.USER_KEY_TYPING_DELAY = void 0;
19
+ const os_1 = require("os");
20
+ const path_1 = require("path");
21
+ exports.USER_KEY_TYPING_DELAY = 80;
22
+ function normalizeId(nodeId) {
23
+ // Special characters (i.e. in our case '.',':','/','%', and '\\') in CSS IDs have to be escaped
24
+ return nodeId.replace(/[.:,%/\\]/g, matchedChar => '\\' + matchedChar);
25
+ }
26
+ exports.normalizeId = normalizeId;
27
+ function urlEncodePath(path) {
28
+ return path.replace(/\\/g, '/');
29
+ }
30
+ exports.urlEncodePath = urlEncodePath;
31
+ async function toTextContentArray(items) {
32
+ const contents = items.map(item => item.textContent());
33
+ const resolvedContents = await Promise.all(contents);
34
+ return resolvedContents.filter(text => text !== undefined);
35
+ }
36
+ exports.toTextContentArray = toTextContentArray;
37
+ function isDefined(content) {
38
+ return content !== undefined;
39
+ }
40
+ exports.isDefined = isDefined;
41
+ function isNotNull(content) {
42
+ return content !== null;
43
+ }
44
+ exports.isNotNull = isNotNull;
45
+ async function textContent(elementPromise) {
46
+ const element = await elementPromise;
47
+ if (!element) {
48
+ return undefined;
49
+ }
50
+ const content = await element.textContent();
51
+ return content ? content : undefined;
52
+ }
53
+ exports.textContent = textContent;
54
+ async function containsClass(elementPromise, cssClass) {
55
+ return elementContainsClass(await elementPromise, cssClass);
56
+ }
57
+ exports.containsClass = containsClass;
58
+ async function elementContainsClass(element, cssClass) {
59
+ if (element) {
60
+ const classValue = await element.getAttribute('class');
61
+ if (classValue) {
62
+ return classValue === null || classValue === void 0 ? void 0 : classValue.split(' ').includes(cssClass);
63
+ }
64
+ }
65
+ return false;
66
+ }
67
+ exports.elementContainsClass = elementContainsClass;
68
+ async function isElementVisible(elementPromise) {
69
+ const element = await elementPromise;
70
+ return element ? element.isVisible() : false;
71
+ }
72
+ exports.isElementVisible = isElementVisible;
73
+ async function elementId(element) {
74
+ const id = await element.getAttribute('id');
75
+ if (id === null) {
76
+ throw new Error('Could not get ID of ' + element);
77
+ }
78
+ return id;
79
+ }
80
+ exports.elementId = elementId;
81
+ var OSUtil;
82
+ (function (OSUtil) {
83
+ OSUtil.isWindows = (0, os_1.platform)() === 'win32';
84
+ OSUtil.isMacOS = (0, os_1.platform)() === 'darwin';
85
+ // The platform-specific file separator '\' or '/'.
86
+ OSUtil.fileSeparator = path_1.sep;
87
+ // The platform-specific location of the temporary directory.
88
+ OSUtil.tmpDir = (0, os_1.tmpdir)();
89
+ function osStartsWithFileSeparator(path) {
90
+ return path.startsWith(OSUtil.fileSeparator);
91
+ }
92
+ OSUtil.osStartsWithFileSeparator = osStartsWithFileSeparator;
93
+ })(OSUtil = exports.OSUtil || (exports.OSUtil = {}));
94
94
  //# sourceMappingURL=util.js.map
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@theia/playwright",
3
- "version": "1.48.1",
3
+ "version": "1.48.2",
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": {
@@ -45,5 +45,5 @@
45
45
  "access": "public"
46
46
  },
47
47
  "main": "lib/index",
48
- "gitHead": "04c631933dfd14f58d1df5b9b28dd5596c84ec04"
48
+ "gitHead": "0e9583d043dde303de7a0f86f68439659f8827b0"
49
49
  }
package/src/index.ts CHANGED
@@ -1,46 +1,46 @@
1
- // *****************************************************************************
2
- // Copyright (C) 2022 EclipseSource and others.
3
- //
4
- // This program and the accompanying materials are made available under the
5
- // terms of the Eclipse Public License v. 2.0 which is available at
6
- // http://www.eclipse.org/legal/epl-2.0.
7
- //
8
- // This Source Code may also be made available under the following Secondary
9
- // Licenses when the conditions for such availability set forth in the Eclipse
10
- // Public License v. 2.0 are satisfied: GNU General Public License, version 2
11
- // with the GNU Classpath Exception which is available at
12
- // https://www.gnu.org/software/classpath/license.html.
13
- //
14
- // SPDX-License-Identifier: EPL-2.0 OR GPL-2.0-only WITH Classpath-exception-2.0
15
- // *****************************************************************************
16
-
17
- export * from './theia-about-dialog';
18
- export * from './theia-app';
19
- export * from './theia-app-loader';
20
- export * from './theia-context-menu';
21
- export * from './theia-dialog';
22
- export * from './theia-editor';
23
- export * from './theia-explorer-view';
24
- export * from './theia-main-menu';
25
- export * from './theia-menu-item';
26
- export * from './theia-menu';
27
- export * from './theia-notification-indicator';
28
- export * from './theia-notification-overlay';
29
- export * from './theia-output-channel';
30
- export * from './theia-output-view';
31
- export * from './theia-page-object';
32
- export * from './theia-preference-view';
33
- export * from './theia-problem-indicator';
34
- export * from './theia-problem-view';
35
- export * from './theia-quick-command-palette';
36
- export * from './theia-rename-dialog';
37
- export * from './theia-status-bar';
38
- export * from './theia-status-indicator';
39
- export * from './theia-text-editor';
40
- export * from './theia-toggle-bottom-indicator';
41
- export * from './theia-toolbar';
42
- export * from './theia-toolbar-item';
43
- export * from './theia-tree-node';
44
- export * from './theia-view';
45
- export * from './theia-workspace';
46
- export * from './util';
1
+ // *****************************************************************************
2
+ // Copyright (C) 2022 EclipseSource and others.
3
+ //
4
+ // This program and the accompanying materials are made available under the
5
+ // terms of the Eclipse Public License v. 2.0 which is available at
6
+ // http://www.eclipse.org/legal/epl-2.0.
7
+ //
8
+ // This Source Code may also be made available under the following Secondary
9
+ // Licenses when the conditions for such availability set forth in the Eclipse
10
+ // Public License v. 2.0 are satisfied: GNU General Public License, version 2
11
+ // with the GNU Classpath Exception which is available at
12
+ // https://www.gnu.org/software/classpath/license.html.
13
+ //
14
+ // SPDX-License-Identifier: EPL-2.0 OR GPL-2.0-only WITH Classpath-exception-2.0
15
+ // *****************************************************************************
16
+
17
+ export * from './theia-about-dialog';
18
+ export * from './theia-app';
19
+ export * from './theia-app-loader';
20
+ export * from './theia-context-menu';
21
+ export * from './theia-dialog';
22
+ export * from './theia-editor';
23
+ export * from './theia-explorer-view';
24
+ export * from './theia-main-menu';
25
+ export * from './theia-menu-item';
26
+ export * from './theia-menu';
27
+ export * from './theia-notification-indicator';
28
+ export * from './theia-notification-overlay';
29
+ export * from './theia-output-channel';
30
+ export * from './theia-output-view';
31
+ export * from './theia-page-object';
32
+ export * from './theia-preference-view';
33
+ export * from './theia-problem-indicator';
34
+ export * from './theia-problem-view';
35
+ export * from './theia-quick-command-palette';
36
+ export * from './theia-rename-dialog';
37
+ export * from './theia-status-bar';
38
+ export * from './theia-status-indicator';
39
+ export * from './theia-text-editor';
40
+ export * from './theia-toggle-bottom-indicator';
41
+ export * from './theia-toolbar';
42
+ export * from './theia-toolbar-item';
43
+ export * from './theia-tree-node';
44
+ export * from './theia-view';
45
+ export * from './theia-workspace';
46
+ export * from './util';
@@ -1,4 +1,4 @@
1
- this is just a sample file
2
- content line 2
3
- content line 3
4
- content line 4
1
+ this is just a sample file
2
+ content line 2
3
+ content line 3
4
+ content line 4
@@ -1 +1 @@
1
- this is just a sample file
1
+ this is just a sample file
@@ -1 +1 @@
1
- this is just a sample file
1
+ this is just a sample file
@@ -1 +1 @@
1
- this is just a sample file
1
+ this is just a sample file
@@ -1 +1 @@
1
- this is just a sample file
1
+ this is just a sample file
@@ -1 +1 @@
1
- this is just a sample file
1
+ this is just a sample file
@@ -1 +1 @@
1
- this is just a sample file
1
+ this is just a sample file
@@ -1 +1 @@
1
- this is just a sample file
1
+ this is just a sample file
@@ -1 +1 @@
1
- this is just a sample file
1
+ this is just a sample file
@@ -1 +1 @@
1
- this is just another sample file
1
+ this is just another sample file
@@ -1,33 +1,33 @@
1
- // *****************************************************************************
2
- // Copyright (C) 2021 logi.cals GmbH, EclipseSource and others.
3
- //
4
- // This program and the accompanying materials are made available under the
5
- // terms of the Eclipse Public License v. 2.0 which is available at
6
- // http://www.eclipse.org/legal/epl-2.0.
7
- //
8
- // This Source Code may also be made available under the following Secondary
9
- // Licenses when the conditions for such availability set forth in the Eclipse
10
- // Public License v. 2.0 are satisfied: GNU General Public License, version 2
11
- // with the GNU Classpath Exception which is available at
12
- // https://www.gnu.org/software/classpath/license.html.
13
- //
14
- // SPDX-License-Identifier: EPL-2.0 OR GPL-2.0-only WITH Classpath-exception-2.0
15
- // *****************************************************************************
16
-
17
- import { expect, test } from '@playwright/test';
18
- import { TheiaAppLoader } from '../theia-app-loader';
19
- import { TheiaApp } from '../theia-app';
20
-
21
- test.describe('Theia Application', () => {
22
- let app: TheiaApp;
23
-
24
- test.afterAll(async () => {
25
- await app.page.close();
26
- });
27
-
28
- test('should load and should show main content panel', async ({ playwright, browser }) => {
29
- app = await TheiaAppLoader.load({ playwright, browser });
30
- expect(await app.isMainContentPanelVisible()).toBe(true);
31
- });
32
-
33
- });
1
+ // *****************************************************************************
2
+ // Copyright (C) 2021 logi.cals GmbH, EclipseSource and others.
3
+ //
4
+ // This program and the accompanying materials are made available under the
5
+ // terms of the Eclipse Public License v. 2.0 which is available at
6
+ // http://www.eclipse.org/legal/epl-2.0.
7
+ //
8
+ // This Source Code may also be made available under the following Secondary
9
+ // Licenses when the conditions for such availability set forth in the Eclipse
10
+ // Public License v. 2.0 are satisfied: GNU General Public License, version 2
11
+ // with the GNU Classpath Exception which is available at
12
+ // https://www.gnu.org/software/classpath/license.html.
13
+ //
14
+ // SPDX-License-Identifier: EPL-2.0 OR GPL-2.0-only WITH Classpath-exception-2.0
15
+ // *****************************************************************************
16
+
17
+ import { expect, test } from '@playwright/test';
18
+ import { TheiaAppLoader } from '../theia-app-loader';
19
+ import { TheiaApp } from '../theia-app';
20
+
21
+ test.describe('Theia Application', () => {
22
+ let app: TheiaApp;
23
+
24
+ test.afterAll(async () => {
25
+ await app.page.close();
26
+ });
27
+
28
+ test('should load and should show main content panel', async ({ playwright, browser }) => {
29
+ app = await TheiaAppLoader.load({ playwright, browser });
30
+ expect(await app.isMainContentPanelVisible()).toBe(true);
31
+ });
32
+
33
+ });
@@ -1,67 +1,67 @@
1
- // *****************************************************************************
2
- // Copyright (C) 2023 Toro Cloud Pty Ltd and others.
3
- //
4
- // This program and the accompanying materials are made available under the
5
- // terms of the Eclipse Public License v. 2.0 which is available at
6
- // http://www.eclipse.org/legal/epl-2.0.
7
- //
8
- // This Source Code may also be made available under the following Secondary
9
- // Licenses when the conditions for such availability set forth in the Eclipse
10
- // Public License v. 2.0 are satisfied: GNU General Public License, version 2
11
- // with the GNU Classpath Exception which is available at
12
- // https://www.gnu.org/software/classpath/license.html.
13
- //
14
- // SPDX-License-Identifier: EPL-2.0 OR GPL-2.0-only WITH Classpath-exception-2.0
15
-
16
- import { test } from '@playwright/test';
17
- import { TheiaApp } from '../theia-app';
18
- import { TheiaAppLoader } from '../theia-app-loader';
19
- import { TheiaExplorerView } from '../theia-explorer-view';
20
- import { TheiaTextEditor } from '../theia-text-editor';
21
- import { TheiaWelcomeView } from '../theia-welcome-view';
22
- import { TheiaWorkspace } from '../theia-workspace';
23
-
24
- test.describe('Theia Application Shell', () => {
25
- test.describe.configure({
26
- timeout: 120000
27
- });
28
-
29
- let app: TheiaApp;
30
-
31
- test.beforeAll(async ({ playwright, browser }) => {
32
- const ws = new TheiaWorkspace(['src/tests/resources/sample-files1']);
33
- app = await TheiaAppLoader.load({ playwright, browser }, ws);
34
-
35
- // The welcome view must be closed because the memory leak only occurs when there are
36
- // no tabs left open.
37
- const welcomeView = new TheiaWelcomeView(app);
38
-
39
- if (await welcomeView.isTabVisible()) {
40
- await welcomeView.close();
41
- }
42
- });
43
-
44
- test.afterAll(async () => {
45
- await app.page.close();
46
- });
47
-
48
- /**
49
- * The aim of this test is to detect memory leaks when opening and closing editors many times.
50
- * Remove the skip and run the test, check the logs for any memory leak warnings.
51
- * It should take less than 2min to run, if it takes longer than that, just increase the timeout.
52
- */
53
- test.skip('should open and close a text editor many times', async () => {
54
- for (let i = 0; i < 200; i++) {
55
- const explorer = await app.openView(TheiaExplorerView);
56
-
57
- const fileStatNode = await explorer.getFileStatNodeByLabel('sample.txt');
58
- const contextMenu = await fileStatNode.openContextMenu();
59
- await contextMenu.clickMenuItem('Open');
60
-
61
- const textEditor = new TheiaTextEditor('sample.txt', app);
62
- await textEditor.waitForVisible();
63
-
64
- await textEditor.close();
65
- }
66
- });
67
- });
1
+ // *****************************************************************************
2
+ // Copyright (C) 2023 Toro Cloud Pty Ltd and others.
3
+ //
4
+ // This program and the accompanying materials are made available under the
5
+ // terms of the Eclipse Public License v. 2.0 which is available at
6
+ // http://www.eclipse.org/legal/epl-2.0.
7
+ //
8
+ // This Source Code may also be made available under the following Secondary
9
+ // Licenses when the conditions for such availability set forth in the Eclipse
10
+ // Public License v. 2.0 are satisfied: GNU General Public License, version 2
11
+ // with the GNU Classpath Exception which is available at
12
+ // https://www.gnu.org/software/classpath/license.html.
13
+ //
14
+ // SPDX-License-Identifier: EPL-2.0 OR GPL-2.0-only WITH Classpath-exception-2.0
15
+
16
+ import { test } from '@playwright/test';
17
+ import { TheiaApp } from '../theia-app';
18
+ import { TheiaAppLoader } from '../theia-app-loader';
19
+ import { TheiaExplorerView } from '../theia-explorer-view';
20
+ import { TheiaTextEditor } from '../theia-text-editor';
21
+ import { TheiaWelcomeView } from '../theia-welcome-view';
22
+ import { TheiaWorkspace } from '../theia-workspace';
23
+
24
+ test.describe('Theia Application Shell', () => {
25
+ test.describe.configure({
26
+ timeout: 120000
27
+ });
28
+
29
+ let app: TheiaApp;
30
+
31
+ test.beforeAll(async ({ playwright, browser }) => {
32
+ const ws = new TheiaWorkspace(['src/tests/resources/sample-files1']);
33
+ app = await TheiaAppLoader.load({ playwright, browser }, ws);
34
+
35
+ // The welcome view must be closed because the memory leak only occurs when there are
36
+ // no tabs left open.
37
+ const welcomeView = new TheiaWelcomeView(app);
38
+
39
+ if (await welcomeView.isTabVisible()) {
40
+ await welcomeView.close();
41
+ }
42
+ });
43
+
44
+ test.afterAll(async () => {
45
+ await app.page.close();
46
+ });
47
+
48
+ /**
49
+ * The aim of this test is to detect memory leaks when opening and closing editors many times.
50
+ * Remove the skip and run the test, check the logs for any memory leak warnings.
51
+ * It should take less than 2min to run, if it takes longer than that, just increase the timeout.
52
+ */
53
+ test.skip('should open and close a text editor many times', async () => {
54
+ for (let i = 0; i < 200; i++) {
55
+ const explorer = await app.openView(TheiaExplorerView);
56
+
57
+ const fileStatNode = await explorer.getFileStatNodeByLabel('sample.txt');
58
+ const contextMenu = await fileStatNode.openContextMenu();
59
+ await contextMenu.clickMenuItem('Open');
60
+
61
+ const textEditor = new TheiaTextEditor('sample.txt', app);
62
+ await textEditor.waitForVisible();
63
+
64
+ await textEditor.close();
65
+ }
66
+ });
67
+ });