all.js 1.6 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970
  1. const requirejs = require('requirejs');
  2. const jsdom = require('jsdom');
  3. const glob = require('glob');
  4. const path = require('path');
  5. requirejs.config({
  6. baseUrl: '',
  7. paths: {
  8. 'vs/fillers/monaco-editor-core': 'out/languages/amd-tsc/fillers/monaco-editor-core-amd',
  9. 'vs/basic-languages': 'out/languages/amd-tsc/basic-languages',
  10. vs: './node_modules/monaco-editor-core/dev/vs'
  11. },
  12. nodeRequire: require
  13. });
  14. const tmp = new jsdom.JSDOM('<!DOCTYPE html><html><body></body></html>');
  15. global.AMD = true;
  16. global.document = tmp.window.document;
  17. global.navigator = tmp.window.navigator;
  18. global.self = global;
  19. global.document.queryCommandSupported = function () {
  20. return false;
  21. };
  22. global.UIEvent = tmp.window.UIEvent;
  23. global.window = {
  24. location: {},
  25. navigator: tmp.window.navigator,
  26. document: {
  27. body: tmp.window.document.body,
  28. addEventListener: (...args) => tmp.window.document.addEventListener(...args)
  29. },
  30. matchMedia: function () {
  31. return {
  32. matches: false,
  33. addEventListener: function () {}
  34. };
  35. },
  36. setInterval: function () {},
  37. setTimeout: function () {}
  38. };
  39. requirejs(
  40. ['test/unit/setup'],
  41. function () {
  42. glob(
  43. 'out/languages/amd-tsc/basic-languages/*/*.test.js',
  44. { cwd: path.join(__dirname, '../../') },
  45. function (err, files) {
  46. if (err) {
  47. console.log(err);
  48. return;
  49. }
  50. requirejs(
  51. files.map((f) => f.replace(/^out\/languages\/amd-tsc/, 'vs').replace(/\.js$/, '')),
  52. function () {
  53. run(); // We can launch the tests!
  54. },
  55. function (err) {
  56. console.log(err);
  57. }
  58. );
  59. }
  60. );
  61. },
  62. function (err) {
  63. console.log(err);
  64. process.exit(1);
  65. }
  66. );