Discover tests via glob

This commit is contained in:
Alexandru Dima 2019-12-18 11:07:37 +01:00
parent 2811880280
commit b16a1195eb
No known key found for this signature in database
GPG key ID: 6E58D7B045760DA0
4 changed files with 40 additions and 80 deletions

22
package-lock.json generated
View file

@ -549,9 +549,9 @@
} }
}, },
"glob": { "glob": {
"version": "7.1.3", "version": "7.1.6",
"resolved": "https://registry.npmjs.org/glob/-/glob-7.1.3.tgz", "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.6.tgz",
"integrity": "sha512-vcfuiIxogLV4DlGBHIUOwI0IbrJ8HWPc4MU7HzviGeNho/UJDfi6B5p3sHeWIQ0KGIU0Jpxi5ZHxemQfLkkAwQ==", "integrity": "sha512-LwaxwyZ72Lk7vZINtNNrywX0ZuLyStrdDtabefZKAY5ZGJhVtgdznluResxNmPitE0SAO+O26sWTHeKSI2wMBA==",
"dev": true, "dev": true,
"requires": { "requires": {
"fs.realpath": "^1.0.0", "fs.realpath": "^1.0.0",
@ -919,6 +919,22 @@
"yargs": "13.3.0", "yargs": "13.3.0",
"yargs-parser": "13.1.1", "yargs-parser": "13.1.1",
"yargs-unparser": "1.6.0" "yargs-unparser": "1.6.0"
},
"dependencies": {
"glob": {
"version": "7.1.3",
"resolved": "https://registry.npmjs.org/glob/-/glob-7.1.3.tgz",
"integrity": "sha512-vcfuiIxogLV4DlGBHIUOwI0IbrJ8HWPc4MU7HzviGeNho/UJDfi6B5p3sHeWIQ0KGIU0Jpxi5ZHxemQfLkkAwQ==",
"dev": true,
"requires": {
"fs.realpath": "^1.0.0",
"inflight": "^1.0.4",
"inherits": "2",
"minimatch": "^3.0.4",
"once": "^1.3.0",
"path-is-absolute": "^1.0.0"
}
}
} }
}, },
"monaco-editor-core": { "monaco-editor-core": {

View file

@ -18,12 +18,13 @@
"url": "https://github.com/Microsoft/monaco-languages/issues" "url": "https://github.com/Microsoft/monaco-languages/issues"
}, },
"devDependencies": { "devDependencies": {
"glob": "^7.1.6",
"jsdom": "^15.2.1", "jsdom": "^15.2.1",
"mocha": "^6.2.2", "mocha": "^6.2.2",
"monaco-editor-core": "0.18.1", "monaco-editor-core": "0.18.1",
"monaco-plugin-helpers": "^1.0.2", "monaco-plugin-helpers": "^1.0.2",
"requirejs": "^2.3.6", "requirejs": "^2.3.6",
"typescript": "3.7.3", "terser": "^4.4.3",
"terser": "^4.4.3" "typescript": "3.7.3"
} }
} }

View file

@ -1,5 +1,7 @@
var requirejs = require("requirejs"); const requirejs = require("requirejs");
var jsdom = require('jsdom'); const jsdom = require('jsdom');
const glob = require('glob');
const path = require('path');
requirejs.config({ requirejs.config({
baseUrl: '', baseUrl: '',
@ -11,7 +13,7 @@ requirejs.config({
nodeRequire: require nodeRequire: require
}); });
let tmp = new jsdom.JSDOM('<!DOCTYPE html><html><body></body></html>'); const tmp = new jsdom.JSDOM('<!DOCTYPE html><html><body></body></html>');
global.document = tmp.window.document; global.document = tmp.window.document;
global.navigator = tmp.window.navigator; global.navigator = tmp.window.navigator;
global.self = global; global.self = global;
@ -19,6 +21,17 @@ global.document.queryCommandSupported = function () { return false; };
global.window = { location: {} }; global.window = { location: {} };
requirejs(['./test/setup'], function () { requirejs(['./test/setup'], function () {
glob('release/dev/*/*.test.js', { cwd: path.dirname(__dirname) }, function (err, files) {
if (err) {
console.log(err);
return;
}
requirejs(files.map(f => f.replace(/\.js$/, '')), function () {
run(); // We can launch the tests!
}, function (err) {
console.log(err);
})
});
}, function (err) { }, function (err) {
console.log(err); console.log(err);
}); });

View file

@ -20,75 +20,5 @@ define('vs/nls', [], {
} }
}); });
define(['require'], function () { define(['vs/editor/editor.main', function () {
requirejs([ }]);
'vs/editor/editor.main'
], function () {
requirejs([
'release/dev/abap/abap.test',
'release/dev/apex/apex.test',
'release/dev/azcli/azcli.test',
'release/dev/bat/bat.test',
'release/dev/cameligo/cameligo.test',
'release/dev/clojure/clojure.test',
'release/dev/coffee/coffee.test',
'release/dev/cpp/cpp.test',
'release/dev/csharp/csharp.test',
'release/dev/csp/csp.test',
'release/dev/css/css.test',
'release/dev/dockerfile/dockerfile.test',
'release/dev/fsharp/fsharp.test',
'release/dev/go/go.test',
'release/dev/graphql/graphql.test',
'release/dev/handlebars/handlebars.test',
'release/dev/html/html.test',
'release/dev/java/java.test',
'release/dev/javascript/javascript.test',
'release/dev/kotlin/kotlin.test',
'release/dev/less/less.test',
'release/dev/lua/lua.test',
'release/dev/markdown/markdown.test',
'release/dev/mips/mips.test',
'release/dev/msdax/msdax.test',
'release/dev/mysql/mysql.test',
'release/dev/objective-c/objective-c.test',
'release/dev/pascal/pascal.test',
'release/dev/pascaligo/pascaligo.test',
'release/dev/perl/perl.test',
'release/dev/pgsql/pgsql.test',
'release/dev/php/php.test',
'release/dev/postiats/postiats.test',
'release/dev/powerquery/powerquery.test',
'release/dev/powershell/powershell.test',
'release/dev/pug/pug.test',
'release/dev/python/python.test',
'release/dev/r/r.test',
'release/dev/razor/razor.test',
'release/dev/redis/redis.test',
'release/dev/redshift/redshift.test',
'release/dev/ruby/ruby.test',
'release/dev/rust/rust.test',
'release/dev/sb/sb.test',
'release/dev/scheme/scheme.test',
'release/dev/scss/scss.test',
'release/dev/shell/shell.test',
'release/dev/sophia/sophia.test',
'release/dev/solidity/solidity.test',
'release/dev/sql/sql.test',
'release/dev/st/st.test',
'release/dev/swift/swift.test',
'release/dev/tcl/tcl.test',
'release/dev/twig/twig.test',
'release/dev/typescript/typescript.test',
'release/dev/vb/vb.test',
'release/dev/xml/xml.test',
'release/dev/yaml/yaml.test'
], function () {
run(); // We can launch the tests!
}, function (err) {
console.log(err);
});
}, function (err) {
console.log(err);
});
});