41 lines
1.5 KiB
TypeScript
41 lines
1.5 KiB
TypeScript
|
/*---------------------------------------------------------------------------------------------
|
||
|
* Copyright (c) Microsoft Corporation. All rights reserved.
|
||
|
* Licensed under the MIT License. See License.txt in the project root for license information.
|
||
|
*--------------------------------------------------------------------------------------------*/
|
||
|
|
||
|
const path = require('path');
|
||
|
const testRunner = require('vscode/lib/testrunner');
|
||
|
|
||
|
const options: any = {
|
||
|
ui: 'tdd',
|
||
|
useColors: (!process.env.BUILD_ARTIFACTSTAGINGDIRECTORY && process.platform !== 'win32'),
|
||
|
timeout: 60000
|
||
|
};
|
||
|
|
||
|
// These integration tests is being run in multiple environments (electron, web, remote)
|
||
|
// so we need to set the suite name based on the environment as the suite name is used
|
||
|
// for the test results file name
|
||
|
let suite = '';
|
||
|
if (process.env.VSCODE_BROWSER) {
|
||
|
suite = `${process.env.VSCODE_BROWSER} Browser Integration Git Tests`;
|
||
|
} else if (process.env.REMOTE_VSCODE) {
|
||
|
suite = 'Remote Integration Git Tests';
|
||
|
} else {
|
||
|
suite = 'Integration Git Tests';
|
||
|
}
|
||
|
|
||
|
if (process.env.BUILD_ARTIFACTSTAGINGDIRECTORY) {
|
||
|
options.reporter = 'mocha-multi-reporters';
|
||
|
options.reporterOptions = {
|
||
|
reporterEnabled: 'spec, mocha-junit-reporter',
|
||
|
mochaJunitReporterReporterOptions: {
|
||
|
testsuitesTitle: `${suite} ${process.platform}`,
|
||
|
mochaFile: path.join(process.env.BUILD_ARTIFACTSTAGINGDIRECTORY, `test-results/${process.platform}-${process.arch}-${suite.toLowerCase().replace(/[^\w]/g, '-')}-results.xml`)
|
||
|
}
|
||
|
};
|
||
|
}
|
||
|
|
||
|
testRunner.configure(options);
|
||
|
|
||
|
export = testRunner;
|