tests - allow to run API tests in vscode (#242987)

This commit is contained in:
Benjamin Pasero 2025-03-09 15:54:27 +01:00 committed by GitHub
parent 3180cbe178
commit b90f20946a
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194

View File

@ -19,7 +19,7 @@ const { defineConfig } = require('@vscode/test-cli');
* A list of extension folders who have opted into tests, or configuration objects. * A list of extension folders who have opted into tests, or configuration objects.
* Edit me to add more! * Edit me to add more!
* *
* @type {Array<string | (Partial<import("@vscode/test-cli").TestConfiguration> & { label: string })>} * @type {Array<Partial<import("@vscode/test-cli").TestConfiguration> & { label: string }>}
*/ */
const extensions = [ const extensions = [
{ {
@ -65,6 +65,20 @@ const extensions = [
{ {
label: 'microsoft-authentication', label: 'microsoft-authentication',
mocha: { timeout: 60_000 } mocha: { timeout: 60_000 }
},
{
label: 'vscode-api-tests-folder',
extensionDevelopmentPath: `extensions/vscode-api-tests`,
workspaceFolder: `extensions/vscode-api-tests/testWorkspace`,
mocha: { timeout: 60_000 },
files: 'extensions/vscode-api-tests/out/singlefolder-tests/**/*.test.js',
},
{
label: 'vscode-api-tests-workspace',
extensionDevelopmentPath: `extensions/vscode-api-tests`,
workspaceFolder: `extensions/vscode-api-tests/testworkspace.code-workspace`,
mocha: { timeout: 60_000 },
files: 'extensions/vscode-api-tests/out/workspace-tests/**/*.test.js',
} }
]; ];
@ -75,9 +89,12 @@ const defaultLaunchArgs = process.env.API_TESTS_EXTRA_ARGS?.split(' ') || [
const config = defineConfig(extensions.map(extension => { const config = defineConfig(extensions.map(extension => {
/** @type {import('@vscode/test-cli').TestConfiguration} */ /** @type {import('@vscode/test-cli').TestConfiguration} */
const config = typeof extension === 'object' const config = {
? { files: `extensions/${extension.label}/out/**/*.test.js`, ...extension } platform: 'desktop',
: { files: `extensions/${extension}/out/**/*.test.js`, label: extension }; files: `extensions/${extension.label}/out/**/*.test.js`,
extensionDevelopmentPath: `extensions/${extension.label}`,
...extension,
};
config.mocha ??= {}; config.mocha ??= {};
if (process.env.BUILD_ARTIFACTSTAGINGDIRECTORY) { if (process.env.BUILD_ARTIFACTSTAGINGDIRECTORY) {