-
Notifications
You must be signed in to change notification settings - Fork 7
Expand file tree
/
Copy path.vscode-test.js
More file actions
57 lines (51 loc) · 1.37 KB
/
Copy path.vscode-test.js
File metadata and controls
57 lines (51 loc) · 1.37 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
const fs = require("fs");
const path = require("path");
const { defineConfig } = require("@vscode/test-cli");
function resolveLocalVsCodeExecutable() {
if (process.env.VSCODE_EXECUTABLE_PATH) {
return process.env.VSCODE_EXECUTABLE_PATH;
}
if (process.platform === "darwin") {
const candidate =
"/Applications/Visual Studio Code.app/Contents/MacOS/Electron";
return fs.existsSync(candidate) ? candidate : undefined;
}
if (process.platform === "win32") {
const localAppData = process.env.LOCALAPPDATA;
if (localAppData) {
const candidate = path.join(
localAppData,
"Programs",
"Microsoft VS Code",
"Code.exe",
);
if (fs.existsSync(candidate)) {
return candidate;
}
}
return undefined;
}
const linuxCandidates = [
"/usr/bin/code",
"/snap/bin/code",
"/var/lib/flatpak/exports/bin/com.visualstudio.code",
];
return linuxCandidates.find((candidate) => fs.existsSync(candidate));
}
const localVsCodeExecutable = resolveLocalVsCodeExecutable();
module.exports = defineConfig({
files: "out/test/e2e/**/*.e2e.js",
version: "stable",
workspaceFolder: "src/test/e2e/fixtures/workspace",
...(localVsCodeExecutable
? {
useInstallation: {
fromPath: localVsCodeExecutable,
},
}
: {}),
mocha: {
ui: "tdd",
timeout: 20000,
},
});