@theia/playwright 1.67.0-next.56 → 1.67.0-next.86
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/index.d.ts +37 -0
- package/lib/index.d.ts.map +1 -0
- package/lib/index.js +55 -0
- package/lib/index.js.map +1 -0
- package/lib/tests/theia-app.test.d.ts +2 -0
- package/lib/tests/theia-app.test.d.ts.map +1 -0
- package/lib/tests/theia-app.test.js +30 -0
- package/lib/tests/theia-app.test.js.map +1 -0
- package/lib/tests/theia-application-shell.test.d.ts +2 -0
- package/lib/tests/theia-application-shell.test.d.ts.map +1 -0
- package/lib/tests/theia-application-shell.test.js +59 -0
- package/lib/tests/theia-application-shell.test.js.map +1 -0
- package/lib/tests/theia-explorer-view.test.d.ts +2 -0
- package/lib/tests/theia-explorer-view.test.d.ts.map +1 -0
- package/lib/tests/theia-explorer-view.test.js +186 -0
- package/lib/tests/theia-explorer-view.test.js.map +1 -0
- package/lib/tests/theia-getting-started.test.d.ts +2 -0
- package/lib/tests/theia-getting-started.test.d.ts.map +1 -0
- package/lib/tests/theia-getting-started.test.js +46 -0
- package/lib/tests/theia-getting-started.test.js.map +1 -0
- package/lib/tests/theia-main-menu.test.d.ts +2 -0
- package/lib/tests/theia-main-menu.test.d.ts.map +1 -0
- package/lib/tests/theia-main-menu.test.js +111 -0
- package/lib/tests/theia-main-menu.test.js.map +1 -0
- package/lib/tests/theia-notebook-editor.test.d.ts +2 -0
- package/lib/tests/theia-notebook-editor.test.d.ts.map +1 -0
- package/lib/tests/theia-notebook-editor.test.js +301 -0
- package/lib/tests/theia-notebook-editor.test.js.map +1 -0
- package/lib/tests/theia-output-view.test.d.ts +2 -0
- package/lib/tests/theia-output-view.test.d.ts.map +1 -0
- package/lib/tests/theia-output-view.test.js +79 -0
- package/lib/tests/theia-output-view.test.js.map +1 -0
- package/lib/tests/theia-preference-view.test.d.ts +2 -0
- package/lib/tests/theia-preference-view.test.d.ts.map +1 -0
- package/lib/tests/theia-preference-view.test.js +102 -0
- package/lib/tests/theia-preference-view.test.js.map +1 -0
- package/lib/tests/theia-problems-view.test.d.ts +2 -0
- package/lib/tests/theia-problems-view.test.d.ts.map +1 -0
- package/lib/tests/theia-problems-view.test.js +55 -0
- package/lib/tests/theia-problems-view.test.js.map +1 -0
- package/lib/tests/theia-quick-command.test.d.ts +2 -0
- package/lib/tests/theia-quick-command.test.d.ts.map +1 -0
- package/lib/tests/theia-quick-command.test.js +75 -0
- package/lib/tests/theia-quick-command.test.js.map +1 -0
- package/lib/tests/theia-sample-app.test.d.ts +2 -0
- package/lib/tests/theia-sample-app.test.d.ts.map +1 -0
- package/lib/tests/theia-sample-app.test.js +58 -0
- package/lib/tests/theia-sample-app.test.js.map +1 -0
- package/lib/tests/theia-status-bar.test.d.ts +2 -0
- package/lib/tests/theia-status-bar.test.d.ts.map +1 -0
- package/lib/tests/theia-status-bar.test.js +45 -0
- package/lib/tests/theia-status-bar.test.js.map +1 -0
- package/lib/tests/theia-terminal-view.test.d.ts +2 -0
- package/lib/tests/theia-terminal-view.test.d.ts.map +1 -0
- package/lib/tests/theia-terminal-view.test.js +80 -0
- package/lib/tests/theia-terminal-view.test.js.map +1 -0
- package/lib/tests/theia-text-editor.test.d.ts +2 -0
- package/lib/tests/theia-text-editor.test.d.ts.map +1 -0
- package/lib/tests/theia-text-editor.test.js +159 -0
- package/lib/tests/theia-text-editor.test.js.map +1 -0
- package/lib/tests/theia-toolbar.test.d.ts +2 -0
- package/lib/tests/theia-toolbar.test.d.ts.map +1 -0
- package/lib/tests/theia-toolbar.test.js +62 -0
- package/lib/tests/theia-toolbar.test.js.map +1 -0
- package/lib/tests/theia-workspace.test.d.ts +2 -0
- package/lib/tests/theia-workspace.test.d.ts.map +1 -0
- package/lib/tests/theia-workspace.test.js +77 -0
- package/lib/tests/theia-workspace.test.js.map +1 -0
- package/lib/theia-about-dialog.d.ts +5 -0
- package/lib/theia-about-dialog.d.ts.map +1 -0
- package/lib/theia-about-dialog.js +27 -0
- package/lib/theia-about-dialog.js.map +1 -0
- package/lib/theia-app-loader.d.ts +20 -0
- package/lib/theia-app-loader.d.ts.map +1 -0
- package/lib/theia-app-loader.js +124 -0
- package/lib/theia-app-loader.js.map +1 -0
- package/lib/theia-app.d.ts +51 -0
- package/lib/theia-app.d.ts.map +1 -0
- package/lib/theia-app.js +154 -0
- package/lib/theia-app.js.map +1 -0
- package/lib/theia-context-menu.d.ts +9 -0
- package/lib/theia-context-menu.d.ts.map +1 -0
- package/lib/theia-context-menu.js +38 -0
- package/lib/theia-context-menu.js.map +1 -0
- package/lib/theia-dialog.d.ts +29 -0
- package/lib/theia-dialog.d.ts.map +1 -0
- package/lib/theia-dialog.js +100 -0
- package/lib/theia-dialog.js.map +1 -0
- package/lib/theia-editor.d.ts +10 -0
- package/lib/theia-editor.d.ts.map +1 -0
- package/lib/theia-editor.js +69 -0
- package/lib/theia-editor.js.map +1 -0
- package/lib/theia-explorer-view.d.ts +48 -0
- package/lib/theia-explorer-view.d.ts.map +1 -0
- package/lib/theia-explorer-view.js +274 -0
- package/lib/theia-explorer-view.js.map +1 -0
- package/lib/theia-main-menu.d.ts +17 -0
- package/lib/theia-main-menu.d.ts.map +1 -0
- package/lib/theia-main-menu.js +73 -0
- package/lib/theia-main-menu.js.map +1 -0
- package/lib/theia-menu-item.d.ts +15 -0
- package/lib/theia-menu-item.d.ts.map +1 -0
- package/lib/theia-menu-item.js +67 -0
- package/lib/theia-menu-item.js.map +1 -0
- package/lib/theia-menu.d.ts +17 -0
- package/lib/theia-menu.d.ts.map +1 -0
- package/lib/theia-menu.js +106 -0
- package/lib/theia-menu.js.map +1 -0
- package/lib/theia-monaco-editor.d.ts +63 -0
- package/lib/theia-monaco-editor.d.ts.map +1 -0
- package/lib/theia-monaco-editor.js +155 -0
- package/lib/theia-monaco-editor.js.map +1 -0
- package/lib/theia-notebook-cell.d.ts +104 -0
- package/lib/theia-notebook-cell.d.ts.map +1 -0
- package/lib/theia-notebook-cell.js +228 -0
- package/lib/theia-notebook-cell.js.map +1 -0
- package/lib/theia-notebook-editor.d.ts +50 -0
- package/lib/theia-notebook-editor.d.ts.map +1 -0
- package/lib/theia-notebook-editor.js +153 -0
- package/lib/theia-notebook-editor.js.map +1 -0
- package/lib/theia-notebook-toolbar.d.ts +13 -0
- package/lib/theia-notebook-toolbar.d.ts.map +1 -0
- package/lib/theia-notebook-toolbar.js +47 -0
- package/lib/theia-notebook-toolbar.js.map +1 -0
- package/lib/theia-notification-indicator.d.ts +8 -0
- package/lib/theia-notification-indicator.d.ts.map +1 -0
- package/lib/theia-notification-indicator.js +45 -0
- package/lib/theia-notification-indicator.js.map +1 -0
- package/lib/theia-notification-overlay.d.ts +23 -0
- package/lib/theia-notification-overlay.d.ts.map +1 -0
- package/lib/theia-notification-overlay.js +80 -0
- package/lib/theia-notification-overlay.js.map +1 -0
- package/lib/theia-output-channel.d.ts +25 -0
- package/lib/theia-output-channel.d.ts.map +1 -0
- package/lib/theia-output-channel.js +72 -0
- package/lib/theia-output-channel.js.map +1 -0
- package/lib/theia-output-view.d.ts +10 -0
- package/lib/theia-output-view.d.ts.map +1 -0
- package/lib/theia-output-view.js +82 -0
- package/lib/theia-output-view.js.map +1 -0
- package/lib/theia-page-object.d.ts +8 -0
- package/lib/theia-page-object.d.ts.map +1 -0
- package/lib/theia-page-object.js +28 -0
- package/lib/theia-page-object.js.map +1 -0
- package/lib/theia-preference-view.d.ts +91 -0
- package/lib/theia-preference-view.d.ts.map +1 -0
- package/lib/theia-preference-view.js +224 -0
- package/lib/theia-preference-view.js.map +1 -0
- package/lib/theia-problem-indicator.d.ts +9 -0
- package/lib/theia-problem-indicator.d.ts.map +1 -0
- package/lib/theia-problem-indicator.js +39 -0
- package/lib/theia-problem-indicator.js.map +1 -0
- package/lib/theia-problem-view.d.ts +6 -0
- package/lib/theia-problem-view.d.ts.map +1 -0
- package/lib/theia-problem-view.js +31 -0
- package/lib/theia-problem-view.js.map +1 -0
- package/lib/theia-quick-command-palette.d.ts +14 -0
- package/lib/theia-quick-command-palette.d.ts.map +1 -0
- package/lib/theia-quick-command-palette.js +87 -0
- package/lib/theia-quick-command-palette.js.map +1 -0
- package/lib/theia-rename-dialog.d.ts +6 -0
- package/lib/theia-rename-dialog.d.ts.map +1 -0
- package/lib/theia-rename-dialog.js +35 -0
- package/lib/theia-rename-dialog.js.map +1 -0
- package/lib/theia-status-bar.d.ts +14 -0
- package/lib/theia-status-bar.d.ts.map +1 -0
- package/lib/theia-status-bar.js +40 -0
- package/lib/theia-status-bar.js.map +1 -0
- package/lib/theia-status-indicator.d.ts +11 -0
- package/lib/theia-status-indicator.d.ts.map +1 -0
- package/lib/theia-status-indicator.js +49 -0
- package/lib/theia-status-indicator.js.map +1 -0
- package/lib/theia-terminal.d.ts +14 -0
- package/lib/theia-terminal.d.ts.map +1 -0
- package/lib/theia-terminal.js +60 -0
- package/lib/theia-terminal.js.map +1 -0
- package/lib/theia-text-editor.d.ts +27 -0
- package/lib/theia-text-editor.d.ts.map +1 -0
- package/lib/theia-text-editor.js +124 -0
- package/lib/theia-text-editor.js.map +1 -0
- package/lib/theia-toggle-bottom-indicator.d.ts +5 -0
- package/lib/theia-toggle-bottom-indicator.d.ts.map +1 -0
- package/lib/theia-toggle-bottom-indicator.js +27 -0
- package/lib/theia-toggle-bottom-indicator.js.map +1 -0
- package/lib/theia-toolbar-item.d.ts +11 -0
- package/lib/theia-toolbar-item.d.ts.map +1 -0
- package/lib/theia-toolbar-item.js +41 -0
- package/lib/theia-toolbar-item.js.map +1 -0
- package/lib/theia-toolbar.d.ts +20 -0
- package/lib/theia-toolbar.d.ts.map +1 -0
- package/lib/theia-toolbar.js +91 -0
- package/lib/theia-toolbar.js.map +1 -0
- package/lib/theia-tree-node.d.ts +20 -0
- package/lib/theia-tree-node.d.ts.map +1 -0
- package/lib/theia-tree-node.js +73 -0
- package/lib/theia-tree-node.js.map +1 -0
- package/lib/theia-view.d.ts +33 -0
- package/lib/theia-view.d.ts.map +1 -0
- package/lib/theia-view.js +150 -0
- package/lib/theia-view.js.map +1 -0
- package/lib/theia-welcome-view.d.ts +6 -0
- package/lib/theia-welcome-view.d.ts.map +1 -0
- package/lib/theia-welcome-view.js +31 -0
- package/lib/theia-welcome-view.js.map +1 -0
- package/lib/theia-workspace.d.ts +27 -0
- package/lib/theia-workspace.d.ts.map +1 -0
- package/lib/theia-workspace.js +84 -0
- package/lib/theia-workspace.js.map +1 -0
- package/lib/util.d.ts +18 -0
- package/lib/util.d.ts.map +1 -0
- package/lib/util.js +86 -0
- package/lib/util.js.map +1 -0
- package/package.json +5 -4
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"theia-main-menu.test.js","sourceRoot":"","sources":["../../src/tests/theia-main-menu.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"theia-notebook-editor.test.d.ts","sourceRoot":"","sources":["../../src/tests/theia-notebook-editor.test.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,301 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
// *****************************************************************************
|
|
3
|
+
// Copyright (C) 2024 TypeFox GmbH 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 path = require("path");
|
|
20
|
+
const theia_app_loader_1 = require("../theia-app-loader");
|
|
21
|
+
const theia_notebook_editor_1 = require("../theia-notebook-editor");
|
|
22
|
+
const theia_workspace_1 = require("../theia-workspace");
|
|
23
|
+
// See .github/workflows/playwright.yml for preferred python version
|
|
24
|
+
const preferredKernel = process.env.CI ? 'Python 3.13' : 'Python 3';
|
|
25
|
+
async function ensureKernelSelected(editor) {
|
|
26
|
+
const selectedKernel = await editor.selectedKernel();
|
|
27
|
+
if ((selectedKernel === null || selectedKernel === void 0 ? void 0 : selectedKernel.match(new RegExp(`^${preferredKernel}`))) === null) {
|
|
28
|
+
await editor.selectKernel(preferredKernel);
|
|
29
|
+
}
|
|
30
|
+
}
|
|
31
|
+
async function closeEditorWithoutSave(editor) {
|
|
32
|
+
if (await editor.isDirty()) {
|
|
33
|
+
await editor.closeWithoutSave();
|
|
34
|
+
}
|
|
35
|
+
else {
|
|
36
|
+
await editor.close();
|
|
37
|
+
}
|
|
38
|
+
}
|
|
39
|
+
test_1.test.describe('Python Kernel Installed', () => {
|
|
40
|
+
let app;
|
|
41
|
+
let editor;
|
|
42
|
+
test_1.test.beforeAll(async ({ playwright, browser }) => {
|
|
43
|
+
app = await loadApp({ playwright, browser });
|
|
44
|
+
});
|
|
45
|
+
test_1.test.beforeEach(async () => {
|
|
46
|
+
editor = await app.openEditor('sample.ipynb', theia_notebook_editor_1.TheiaNotebookEditor);
|
|
47
|
+
});
|
|
48
|
+
test_1.test.afterAll(async () => {
|
|
49
|
+
if (app.page) {
|
|
50
|
+
await app.page.close();
|
|
51
|
+
}
|
|
52
|
+
});
|
|
53
|
+
test_1.test.afterEach(async () => {
|
|
54
|
+
await closeEditorWithoutSave(editor);
|
|
55
|
+
});
|
|
56
|
+
(0, test_1.test)('kernels are installed', async () => {
|
|
57
|
+
const kernels = await editor.availableKernels();
|
|
58
|
+
const msg = `Available kernels:\n ${kernels.join('\n')}`;
|
|
59
|
+
console.log(msg); // Print available kernels, useful when running in CI.
|
|
60
|
+
(0, test_1.expect)(kernels.length, msg).toBeGreaterThan(0);
|
|
61
|
+
const py3kernel = kernels.filter(kernel => kernel.match(new RegExp(`^${preferredKernel}`)));
|
|
62
|
+
(0, test_1.expect)(py3kernel.length, msg).toBeGreaterThan(0);
|
|
63
|
+
});
|
|
64
|
+
(0, test_1.test)('should select a kernel', async () => {
|
|
65
|
+
await editor.selectKernel(preferredKernel);
|
|
66
|
+
const selectedKernel = await editor.selectedKernel();
|
|
67
|
+
(0, test_1.expect)(selectedKernel).toMatch(new RegExp(`^${preferredKernel}`));
|
|
68
|
+
});
|
|
69
|
+
});
|
|
70
|
+
test_1.test.describe('Theia Notebook Editor interaction', () => {
|
|
71
|
+
let app;
|
|
72
|
+
let editor;
|
|
73
|
+
test_1.test.beforeAll(async ({ playwright, browser }) => {
|
|
74
|
+
app = await loadApp({ playwright, browser });
|
|
75
|
+
});
|
|
76
|
+
test_1.test.beforeEach(async () => {
|
|
77
|
+
editor = await app.openEditor('sample.ipynb', theia_notebook_editor_1.TheiaNotebookEditor);
|
|
78
|
+
await ensureKernelSelected(editor);
|
|
79
|
+
});
|
|
80
|
+
test_1.test.afterAll(async () => {
|
|
81
|
+
if (app.page) {
|
|
82
|
+
await app.page.close();
|
|
83
|
+
}
|
|
84
|
+
});
|
|
85
|
+
test_1.test.afterEach(async () => {
|
|
86
|
+
await closeEditorWithoutSave(editor);
|
|
87
|
+
});
|
|
88
|
+
(0, test_1.test)('should add a new code cell', async () => {
|
|
89
|
+
await editor.addCodeCell();
|
|
90
|
+
const cells = await editor.cells();
|
|
91
|
+
(0, test_1.expect)(cells.length).toBe(2);
|
|
92
|
+
(0, test_1.expect)(await cells[1].mode()).toBe('python');
|
|
93
|
+
});
|
|
94
|
+
(0, test_1.test)('should add a new markdown cell', async () => {
|
|
95
|
+
await editor.addMarkdownCell();
|
|
96
|
+
await (await editor.cells())[1].addEditorText('print("markdown")');
|
|
97
|
+
const cells = await editor.cells();
|
|
98
|
+
(0, test_1.expect)(cells.length).toBe(2);
|
|
99
|
+
(0, test_1.expect)(await cells[1].mode()).toBe('markdown');
|
|
100
|
+
(0, test_1.expect)(await cells[1].editorText()).toBe('print("markdown")');
|
|
101
|
+
});
|
|
102
|
+
(0, test_1.test)('should execute all cells', async () => {
|
|
103
|
+
const cell = await firstCell(editor);
|
|
104
|
+
await cell.addEditorText('print("Hallo Notebook!")');
|
|
105
|
+
await editor.addCodeCell();
|
|
106
|
+
const secondCell = (await editor.cells())[1];
|
|
107
|
+
await secondCell.addEditorText('print("Bye Notebook!")');
|
|
108
|
+
await editor.executeAllCells();
|
|
109
|
+
(0, test_1.expect)(await cell.outputText()).toBe('Hallo Notebook!');
|
|
110
|
+
(0, test_1.expect)(await secondCell.outputText()).toBe('Bye Notebook!');
|
|
111
|
+
});
|
|
112
|
+
(0, test_1.test)('should split cell', async () => {
|
|
113
|
+
const cell = await firstCell(editor);
|
|
114
|
+
/*
|
|
115
|
+
Add cell text:
|
|
116
|
+
print("Line-1")
|
|
117
|
+
print("Line-2")
|
|
118
|
+
*/
|
|
119
|
+
await cell.addEditorText('print("Line-1")\nprint("Line-2")');
|
|
120
|
+
/*
|
|
121
|
+
Set cursor:
|
|
122
|
+
print("Line-1")
|
|
123
|
+
<|>print("Line-2")
|
|
124
|
+
*/
|
|
125
|
+
const line = await cell.editor.monacoEditor.line(1);
|
|
126
|
+
(0, test_1.expect)(line, { message: 'Line number 1 should exists' }).toBeDefined();
|
|
127
|
+
await line.click();
|
|
128
|
+
await line.press('ArrowRight');
|
|
129
|
+
// split cell
|
|
130
|
+
await cell.splitCell();
|
|
131
|
+
// expect two cells with text "print("Line-1")" and "print("Line-2")"
|
|
132
|
+
(0, test_1.expect)(await editor.cells()).toHaveLength(2);
|
|
133
|
+
(0, test_1.expect)(await (await editor.cells())[0].editorText()).toBe('print("Line-1")');
|
|
134
|
+
(0, test_1.expect)(await (await editor.cells())[1].editorText()).toBe('print("Line-2")');
|
|
135
|
+
});
|
|
136
|
+
});
|
|
137
|
+
test_1.test.describe('Theia Notebook Cell interaction', () => {
|
|
138
|
+
let app;
|
|
139
|
+
let editor;
|
|
140
|
+
test_1.test.beforeAll(async ({ playwright, browser }) => {
|
|
141
|
+
app = await loadApp({ playwright, browser });
|
|
142
|
+
});
|
|
143
|
+
test_1.test.afterAll(async () => {
|
|
144
|
+
if (app.page) {
|
|
145
|
+
await app.page.close();
|
|
146
|
+
}
|
|
147
|
+
});
|
|
148
|
+
test_1.test.beforeEach(async () => {
|
|
149
|
+
editor = await app.openEditor('sample.ipynb', theia_notebook_editor_1.TheiaNotebookEditor);
|
|
150
|
+
await ensureKernelSelected(editor);
|
|
151
|
+
});
|
|
152
|
+
test_1.test.afterEach(async () => {
|
|
153
|
+
await closeEditorWithoutSave(editor);
|
|
154
|
+
});
|
|
155
|
+
(0, test_1.test)('should write text in a code cell', async () => {
|
|
156
|
+
const cell = await firstCell(editor);
|
|
157
|
+
// assume the first cell is a code cell
|
|
158
|
+
(0, test_1.expect)(await cell.isCodeCell()).toBe(true);
|
|
159
|
+
await cell.addEditorText('print("Hallo")');
|
|
160
|
+
const cellText = await cell.editorText();
|
|
161
|
+
(0, test_1.expect)(cellText).toBe('print("Hallo")');
|
|
162
|
+
});
|
|
163
|
+
(0, test_1.test)('should write multi-line text in a code cell', async () => {
|
|
164
|
+
const cell = await firstCell(editor);
|
|
165
|
+
await cell.addEditorText('print("Hallo")\nprint("Notebook")');
|
|
166
|
+
const cellText = await cell.editorText();
|
|
167
|
+
(0, test_1.expect)(cellText).toBe('print("Hallo")\nprint("Notebook")');
|
|
168
|
+
});
|
|
169
|
+
(0, test_1.test)('Execute code cell and read output', async () => {
|
|
170
|
+
const cell = await firstCell(editor);
|
|
171
|
+
await cell.addEditorText('print("Hallo Notebook!")');
|
|
172
|
+
await cell.execute();
|
|
173
|
+
const cellOutput = await cell.outputText();
|
|
174
|
+
(0, test_1.expect)(cellOutput).toBe('Hallo Notebook!');
|
|
175
|
+
});
|
|
176
|
+
(0, test_1.test)('Check execution count matches', async () => {
|
|
177
|
+
const cell = await firstCell(editor);
|
|
178
|
+
await cell.addEditorText('print("Hallo Notebook!")');
|
|
179
|
+
await cell.execute();
|
|
180
|
+
await cell.execute();
|
|
181
|
+
await cell.execute();
|
|
182
|
+
(0, test_1.expect)(await cell.executionCount()).toBe('3');
|
|
183
|
+
});
|
|
184
|
+
(0, test_1.test)('Check arrow up and down works', async () => {
|
|
185
|
+
const cell = await firstCell(editor);
|
|
186
|
+
await editor.addCodeCell();
|
|
187
|
+
const secondCell = (await editor.cells())[1];
|
|
188
|
+
// second cell is selected after creation
|
|
189
|
+
(0, test_1.expect)(await secondCell.isSelected()).toBe(true);
|
|
190
|
+
// select cell above
|
|
191
|
+
await editor.page.keyboard.type('second cell');
|
|
192
|
+
await secondCell.editor.page.keyboard.press('ArrowUp');
|
|
193
|
+
(0, test_1.expect)(await cell.isSelected()).toBe(true);
|
|
194
|
+
// select cell below
|
|
195
|
+
await cell.app.page.keyboard.press('ArrowDown');
|
|
196
|
+
(0, test_1.expect)(await secondCell.isSelected()).toBe(true);
|
|
197
|
+
});
|
|
198
|
+
(0, test_1.test)('Check k(up)/j(down) selection works', async () => {
|
|
199
|
+
const cell = await firstCell(editor);
|
|
200
|
+
await editor.addCodeCell();
|
|
201
|
+
const secondCell = (await editor.cells())[1];
|
|
202
|
+
// second cell is selected after creation
|
|
203
|
+
(0, test_1.expect)(await secondCell.isSelected()).toBe(true);
|
|
204
|
+
// deselect editor focus and focus the whole cell
|
|
205
|
+
await secondCell.selectCell();
|
|
206
|
+
// select cell above
|
|
207
|
+
await secondCell.editor.page.keyboard.press('k');
|
|
208
|
+
(0, test_1.expect)(await cell.isSelected()).toBe(true);
|
|
209
|
+
// select cell below
|
|
210
|
+
await cell.app.page.keyboard.press('j');
|
|
211
|
+
(0, test_1.expect)(await secondCell.isSelected()).toBe(true);
|
|
212
|
+
});
|
|
213
|
+
(0, test_1.test)('Check x/c/v works', async () => {
|
|
214
|
+
const cell = await firstCell(editor);
|
|
215
|
+
await cell.addEditorText('print("First cell")');
|
|
216
|
+
// add and fill second cell
|
|
217
|
+
await editor.addCodeCell();
|
|
218
|
+
// TODO workaround for create command bug.
|
|
219
|
+
// The first time created cell doesn't contain a monaco-editor child div.
|
|
220
|
+
await ((await editor.cells())[1]).deleteCell();
|
|
221
|
+
await editor.addCodeCell();
|
|
222
|
+
const secondCell = (await editor.cells())[1];
|
|
223
|
+
await secondCell.locator.waitFor({ state: 'visible' });
|
|
224
|
+
await secondCell.addEditorText('print("Second cell")');
|
|
225
|
+
await secondCell.selectCell(); // deselect editor focus
|
|
226
|
+
// cut second cell
|
|
227
|
+
await secondCell.page.keyboard.press('x');
|
|
228
|
+
await editor.waitForCellCountChanged(2);
|
|
229
|
+
(0, test_1.expect)((await editor.cells()).length).toBe(1);
|
|
230
|
+
// paste second cell
|
|
231
|
+
await cell.selectCell();
|
|
232
|
+
await cell.page.keyboard.press('v');
|
|
233
|
+
await editor.waitForCellCountChanged(1);
|
|
234
|
+
(0, test_1.expect)((await editor.cells()).length).toBe(2);
|
|
235
|
+
const pastedCell = (await editor.cells())[1];
|
|
236
|
+
(0, test_1.expect)(await pastedCell.isSelected()).toBe(true);
|
|
237
|
+
// copy first cell
|
|
238
|
+
await cell.selectCell(); // deselect editor focus
|
|
239
|
+
await cell.page.keyboard.press('c');
|
|
240
|
+
// paste copied cell
|
|
241
|
+
await cell.page.keyboard.press('v');
|
|
242
|
+
await editor.waitForCellCountChanged(2);
|
|
243
|
+
(0, test_1.expect)((await editor.cells()).length).toBe(3);
|
|
244
|
+
(0, test_1.expect)(await (await editor.cells())[0].editorText()).toBe('print("First cell")');
|
|
245
|
+
(0, test_1.expect)(await (await editor.cells())[1].editorText()).toBe('print("First cell")');
|
|
246
|
+
(0, test_1.expect)(await (await editor.cells())[2].editorText()).toBe('print("Second cell")');
|
|
247
|
+
(0, test_1.expect)(await editor.isDirty()).toBe(true); // ensure editor is dirty after copy/paste
|
|
248
|
+
});
|
|
249
|
+
(0, test_1.test)('Check LineNumber switch `l` works', async () => {
|
|
250
|
+
const cell = await firstCell(editor);
|
|
251
|
+
await cell.addEditorText('print("First cell")');
|
|
252
|
+
await cell.selectCell();
|
|
253
|
+
await cell.page.keyboard.press('l');
|
|
254
|
+
// NOTE: div.line-numbers is not visible
|
|
255
|
+
await cell.editor.locator.locator('.overflow-guard > div.line-numbers').waitFor({ state: 'attached' });
|
|
256
|
+
});
|
|
257
|
+
(0, test_1.test)('Check Collapse output switch `o` works', async () => {
|
|
258
|
+
const cell = await firstCell(editor);
|
|
259
|
+
await cell.addEditorText('print("Check output collapse")');
|
|
260
|
+
await cell.selectCell();
|
|
261
|
+
await cell.execute(); // produce output
|
|
262
|
+
(0, test_1.expect)(await cell.outputText()).toBe('Check output collapse');
|
|
263
|
+
await cell.page.keyboard.press('o');
|
|
264
|
+
await (await cell.outputContainer()).waitFor({ state: 'hidden' });
|
|
265
|
+
await cell.page.keyboard.press('o');
|
|
266
|
+
await (await cell.outputContainer()).waitFor({ state: 'visible' });
|
|
267
|
+
(0, test_1.expect)(await cell.outputText()).toBe('Check output collapse');
|
|
268
|
+
});
|
|
269
|
+
(0, test_1.test)('Check arrow-up/arrow-down/escape with code completion', async () => {
|
|
270
|
+
await editor.addMarkdownCell();
|
|
271
|
+
const mdCell = (await editor.cells())[1];
|
|
272
|
+
await mdCell.addEditorText('h');
|
|
273
|
+
await editor.page.keyboard.press('Control+Space'); // call CC (suggestWidgetVisible=true)
|
|
274
|
+
await ensureCodeCompletionVisible(mdCell.editor.locator);
|
|
275
|
+
await editor.page.keyboard.press('Escape'); // close CC
|
|
276
|
+
// check the same cell still selected and not lose the edit mode
|
|
277
|
+
(0, test_1.expect)(await mdCell.editor.monacoEditor.isFocused()).toBe(true);
|
|
278
|
+
await editor.page.keyboard.press('Control+Space'); // call CC (suggestWidgetVisible=true)
|
|
279
|
+
await ensureCodeCompletionVisible(mdCell.editor.locator);
|
|
280
|
+
await editor.page.keyboard.press('ArrowUp'); // select next entry in CC list
|
|
281
|
+
await editor.page.keyboard.press('Enter'); // apply completion
|
|
282
|
+
// check the same cell still selected and not the second one due to 'ArrowDown' being pressed
|
|
283
|
+
(0, test_1.expect)(await mdCell.isSelected()).toBe(true);
|
|
284
|
+
});
|
|
285
|
+
});
|
|
286
|
+
async function ensureCodeCompletionVisible(parent) {
|
|
287
|
+
await parent.locator('div.monaco-editor div.suggest-widget').waitFor({ timeout: 5000 });
|
|
288
|
+
}
|
|
289
|
+
async function firstCell(editor) {
|
|
290
|
+
return (await editor.cells())[0];
|
|
291
|
+
}
|
|
292
|
+
async function loadApp(args) {
|
|
293
|
+
const ws = new theia_workspace_1.TheiaWorkspace([path.resolve(__dirname, '../../src/tests/resources/notebook-files')]);
|
|
294
|
+
const app = await theia_app_loader_1.TheiaAppLoader.load(args, ws);
|
|
295
|
+
// auto-save are disabled using settings.json file
|
|
296
|
+
// see examples/playwright/src/tests/resources/notebook-files/.theia/settings.json
|
|
297
|
+
// NOTE: Workspace trust is disabled in examples/browser/package.json using default preferences.
|
|
298
|
+
// If workspace trust check is on, python extension will not be able to explore Python installations.
|
|
299
|
+
return app;
|
|
300
|
+
}
|
|
301
|
+
//# sourceMappingURL=theia-notebook-editor.test.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"theia-notebook-editor.test.js","sourceRoot":"","sources":["../../src/tests/theia-notebook-editor.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"theia-output-view.test.d.ts","sourceRoot":"","sources":["../../src/tests/theia-output-view.test.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,79 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
// *****************************************************************************
|
|
3
|
+
// Copyright (C) 2023 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_output_view_1 = require("../theia-output-view");
|
|
21
|
+
let app;
|
|
22
|
+
let outputView;
|
|
23
|
+
let testChannel;
|
|
24
|
+
test_1.test.describe('Theia Output View', () => {
|
|
25
|
+
test_1.test.beforeAll(async ({ playwright, browser }) => {
|
|
26
|
+
app = await theia_app_loader_1.TheiaAppLoader.load({ playwright, browser });
|
|
27
|
+
});
|
|
28
|
+
test_1.test.afterAll(async () => {
|
|
29
|
+
await app.page.close();
|
|
30
|
+
});
|
|
31
|
+
(0, test_1.test)('should open the output view and check if is visible and active', async () => {
|
|
32
|
+
outputView = await app.openView(theia_output_view_1.TheiaOutputView);
|
|
33
|
+
(0, test_1.expect)(await outputView.isTabVisible()).toBe(true);
|
|
34
|
+
(0, test_1.expect)(await outputView.isDisplayed()).toBe(true);
|
|
35
|
+
(0, test_1.expect)(await outputView.isActive()).toBe(true);
|
|
36
|
+
});
|
|
37
|
+
(0, test_1.test)('should be opened at the bottom and have the title "Output"', async () => {
|
|
38
|
+
(0, test_1.expect)(await outputView.isInSidePanel()).toBe(false);
|
|
39
|
+
(0, test_1.expect)(await outputView.side()).toBe('bottom');
|
|
40
|
+
(0, test_1.expect)(await outputView.title()).toBe('Output');
|
|
41
|
+
});
|
|
42
|
+
(0, test_1.test)('should be closable', async () => {
|
|
43
|
+
(0, test_1.expect)(await outputView.isClosable()).toBe(true);
|
|
44
|
+
await outputView.close();
|
|
45
|
+
(0, test_1.expect)(await outputView.isTabVisible()).toBe(false);
|
|
46
|
+
(0, test_1.expect)(await outputView.isDisplayed()).toBe(false);
|
|
47
|
+
(0, test_1.expect)(await outputView.isActive()).toBe(false);
|
|
48
|
+
});
|
|
49
|
+
(0, test_1.test)('should select a test output channel', async () => {
|
|
50
|
+
outputView = await app.openView(theia_output_view_1.TheiaOutputView);
|
|
51
|
+
(0, test_1.expect)(await outputView.isTabVisible()).toBe(true);
|
|
52
|
+
(0, test_1.expect)(await outputView.isDisplayed()).toBe(true);
|
|
53
|
+
(0, test_1.expect)(await outputView.isActive()).toBe(true);
|
|
54
|
+
const testChannelName = 'API Sample: my test channel';
|
|
55
|
+
(0, test_1.expect)(await outputView.selectOutputChannel(testChannelName)).toBe(true);
|
|
56
|
+
});
|
|
57
|
+
(0, test_1.test)('should check if the output view of the test output channel', async () => {
|
|
58
|
+
const testChannelName = 'API Sample: my test channel';
|
|
59
|
+
(0, test_1.expect)(await outputView.isOutputChannelSelected(testChannelName));
|
|
60
|
+
const channel = await outputView.getOutputChannel(testChannelName);
|
|
61
|
+
(0, test_1.expect)(channel).toBeDefined;
|
|
62
|
+
testChannel = channel;
|
|
63
|
+
(0, test_1.expect)(await testChannel.isDisplayed()).toBe(true);
|
|
64
|
+
});
|
|
65
|
+
(0, test_1.test)('should check if the output view test channel shows the test output', async () => {
|
|
66
|
+
(0, test_1.expect)(await testChannel.numberOfLines()).toBe(5);
|
|
67
|
+
(0, test_1.expect)(await testChannel.textContentOfLineByLineNumber(1)).toMatch('hello info1');
|
|
68
|
+
(0, test_1.expect)(await testChannel.maxSeverityOfLineByLineNumber(1)).toMatch('info');
|
|
69
|
+
(0, test_1.expect)(await testChannel.textContentOfLineByLineNumber(2)).toMatch('hello info2');
|
|
70
|
+
(0, test_1.expect)(await testChannel.maxSeverityOfLineByLineNumber(2)).toMatch('info');
|
|
71
|
+
(0, test_1.expect)(await testChannel.textContentOfLineByLineNumber(3)).toMatch('hello error');
|
|
72
|
+
(0, test_1.expect)(await testChannel.maxSeverityOfLineByLineNumber(3)).toMatch('error');
|
|
73
|
+
(0, test_1.expect)(await testChannel.textContentOfLineByLineNumber(4)).toMatch('hello warning');
|
|
74
|
+
(0, test_1.expect)(await testChannel.maxSeverityOfLineByLineNumber(4)).toMatch('warning');
|
|
75
|
+
(0, test_1.expect)(await testChannel.textContentOfLineByLineNumber(5)).toMatch('inlineInfo1 inlineWarning inlineError inlineInfo2');
|
|
76
|
+
(0, test_1.expect)(await testChannel.maxSeverityOfLineByLineNumber(5)).toMatch('error');
|
|
77
|
+
});
|
|
78
|
+
});
|
|
79
|
+
//# sourceMappingURL=theia-output-view.test.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"theia-output-view.test.js","sourceRoot":"","sources":["../../src/tests/theia-output-view.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"theia-preference-view.test.d.ts","sourceRoot":"","sources":["../../src/tests/theia-preference-view.test.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,102 @@
|
|
|
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
|
+
test_1.test.describe('Preference View', () => {
|
|
22
|
+
let app;
|
|
23
|
+
test_1.test.beforeAll(async ({ playwright, browser }) => {
|
|
24
|
+
app = await theia_app_loader_1.TheiaAppLoader.load({ playwright, browser });
|
|
25
|
+
});
|
|
26
|
+
test_1.test.afterAll(async () => {
|
|
27
|
+
await app.page.close();
|
|
28
|
+
});
|
|
29
|
+
(0, test_1.test)('should be visible and active after being opened', async () => {
|
|
30
|
+
const preferenceView = await app.openPreferences(theia_preference_view_1.TheiaPreferenceView);
|
|
31
|
+
(0, test_1.expect)(await preferenceView.isTabVisible()).toBe(true);
|
|
32
|
+
(0, test_1.expect)(await preferenceView.isDisplayed()).toBe(true);
|
|
33
|
+
(0, test_1.expect)(await preferenceView.isActive()).toBe(true);
|
|
34
|
+
});
|
|
35
|
+
(0, test_1.test)('should be able to read, set, and reset String preferences', async () => {
|
|
36
|
+
const preferences = await app.openPreferences(theia_preference_view_1.TheiaPreferenceView);
|
|
37
|
+
const preferenceId = theia_preference_view_1.PreferenceIds.DiffEditor.MaxComputationTime;
|
|
38
|
+
await preferences.resetPreferenceById(preferenceId);
|
|
39
|
+
(0, test_1.expect)(await preferences.getStringPreferenceById(preferenceId)).toBe(theia_preference_view_1.DefaultPreferences.DiffEditor.MaxComputationTime);
|
|
40
|
+
await preferences.setStringPreferenceById(preferenceId, '8000');
|
|
41
|
+
await preferences.waitForModified(preferenceId);
|
|
42
|
+
(0, test_1.expect)(await preferences.getStringPreferenceById(preferenceId)).toBe('8000');
|
|
43
|
+
await preferences.resetPreferenceById(preferenceId);
|
|
44
|
+
(0, test_1.expect)(await preferences.getStringPreferenceById(preferenceId)).toBe(theia_preference_view_1.DefaultPreferences.DiffEditor.MaxComputationTime);
|
|
45
|
+
});
|
|
46
|
+
(0, test_1.test)('should be able to read, set, and reset Boolean preferences', async () => {
|
|
47
|
+
const preferences = await app.openPreferences(theia_preference_view_1.TheiaPreferenceView);
|
|
48
|
+
const preferenceId = theia_preference_view_1.PreferenceIds.Explorer.AutoReveal;
|
|
49
|
+
await preferences.resetPreferenceById(preferenceId);
|
|
50
|
+
(0, test_1.expect)(await preferences.getBooleanPreferenceById(preferenceId)).toBe(theia_preference_view_1.DefaultPreferences.Explorer.AutoReveal.Enabled);
|
|
51
|
+
await preferences.setBooleanPreferenceById(preferenceId, false);
|
|
52
|
+
await preferences.waitForModified(preferenceId);
|
|
53
|
+
(0, test_1.expect)(await preferences.getBooleanPreferenceById(preferenceId)).toBe(false);
|
|
54
|
+
await preferences.resetPreferenceById(preferenceId);
|
|
55
|
+
(0, test_1.expect)(await preferences.getBooleanPreferenceById(preferenceId)).toBe(theia_preference_view_1.DefaultPreferences.Explorer.AutoReveal.Enabled);
|
|
56
|
+
});
|
|
57
|
+
(0, test_1.test)('should be able to read, set, and reset Options preferences', async () => {
|
|
58
|
+
const preferences = await app.openPreferences(theia_preference_view_1.TheiaPreferenceView);
|
|
59
|
+
const preferenceId = theia_preference_view_1.PreferenceIds.Editor.RenderWhitespace;
|
|
60
|
+
await preferences.resetPreferenceById(preferenceId);
|
|
61
|
+
(0, test_1.expect)(await preferences.getOptionsPreferenceById(preferenceId)).toBe(theia_preference_view_1.DefaultPreferences.Editor.RenderWhitespace.Selection);
|
|
62
|
+
await preferences.setOptionsPreferenceById(preferenceId, theia_preference_view_1.DefaultPreferences.Editor.RenderWhitespace.Boundary);
|
|
63
|
+
await preferences.waitForModified(preferenceId);
|
|
64
|
+
(0, test_1.expect)(await preferences.getOptionsPreferenceById(preferenceId)).toBe(theia_preference_view_1.DefaultPreferences.Editor.RenderWhitespace.Boundary);
|
|
65
|
+
await preferences.resetPreferenceById(preferenceId);
|
|
66
|
+
(0, test_1.expect)(await preferences.getOptionsPreferenceById(preferenceId)).toBe(theia_preference_view_1.DefaultPreferences.Editor.RenderWhitespace.Selection);
|
|
67
|
+
});
|
|
68
|
+
(0, test_1.test)('should throw an error if we try to read, set, or reset a non-existing preference', async () => {
|
|
69
|
+
const preferences = await app.openPreferences(theia_preference_view_1.TheiaPreferenceView);
|
|
70
|
+
preferences.customTimeout = 500;
|
|
71
|
+
try {
|
|
72
|
+
await (0, test_1.expect)(preferences.getBooleanPreferenceById('not.a.real.preference')).rejects.toThrowError();
|
|
73
|
+
await (0, test_1.expect)(preferences.setBooleanPreferenceById('not.a.real.preference', true)).rejects.toThrowError();
|
|
74
|
+
await (0, test_1.expect)(preferences.resetPreferenceById('not.a.real.preference')).rejects.toThrowError();
|
|
75
|
+
await (0, test_1.expect)(preferences.getStringPreferenceById('not.a.real.preference')).rejects.toThrowError();
|
|
76
|
+
await (0, test_1.expect)(preferences.setStringPreferenceById('not.a.real.preference', 'a')).rejects.toThrowError();
|
|
77
|
+
await (0, test_1.expect)(preferences.resetPreferenceById('not.a.real.preference')).rejects.toThrowError();
|
|
78
|
+
await (0, test_1.expect)(preferences.getOptionsPreferenceById('not.a.real.preference')).rejects.toThrowError();
|
|
79
|
+
await (0, test_1.expect)(preferences.setOptionsPreferenceById('not.a.real.preference', 'a')).rejects.toThrowError();
|
|
80
|
+
await (0, test_1.expect)(preferences.resetPreferenceById('not.a.real.preference')).rejects.toThrowError();
|
|
81
|
+
}
|
|
82
|
+
finally {
|
|
83
|
+
preferences.customTimeout = undefined;
|
|
84
|
+
}
|
|
85
|
+
});
|
|
86
|
+
(0, test_1.test)('should throw an error if we try to read, or set a preference with the wrong type', async () => {
|
|
87
|
+
const preferences = await app.openPreferences(theia_preference_view_1.TheiaPreferenceView);
|
|
88
|
+
const stringPreference = theia_preference_view_1.PreferenceIds.DiffEditor.MaxComputationTime;
|
|
89
|
+
const booleanPreference = theia_preference_view_1.PreferenceIds.Explorer.AutoReveal;
|
|
90
|
+
preferences.customTimeout = 500;
|
|
91
|
+
try {
|
|
92
|
+
await (0, test_1.expect)(preferences.getBooleanPreferenceById(stringPreference)).rejects.toThrowError();
|
|
93
|
+
await (0, test_1.expect)(preferences.setBooleanPreferenceById(stringPreference, true)).rejects.toThrowError();
|
|
94
|
+
await (0, test_1.expect)(preferences.setStringPreferenceById(booleanPreference, 'true')).rejects.toThrowError();
|
|
95
|
+
await (0, test_1.expect)(preferences.setOptionsPreferenceById(booleanPreference, 'true')).rejects.toThrowError();
|
|
96
|
+
}
|
|
97
|
+
finally {
|
|
98
|
+
preferences.customTimeout = undefined;
|
|
99
|
+
}
|
|
100
|
+
});
|
|
101
|
+
});
|
|
102
|
+
//# sourceMappingURL=theia-preference-view.test.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"theia-preference-view.test.js","sourceRoot":"","sources":["../../src/tests/theia-preference-view.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"theia-problems-view.test.d.ts","sourceRoot":"","sources":["../../src/tests/theia-problems-view.test.ts"],"names":[],"mappings":""}
|