karma.conf.js 3.7 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677
  1. module.exports = function(config) {
  2. config.set({
  3. basePath: '../../',
  4. captureTimeout: 3e5,
  5. browserNoActivityTimeout: 3e5,
  6. browserDisconnectTimeout: 3e5,
  7. browserDisconnectTolerance: 3,
  8. concurrency: 1,
  9. urlRoot: '/karma',
  10. frameworks: ['mocha', 'chai', 'sinon'],
  11. files: [
  12. '!./**/*.d.ts',
  13. './Tools/DevLoader/BabylonLoader.js',
  14. './tests/unit/babylon/babylon.example.tests.js',
  15. './tests/unit/babylon/src/Mesh/babylon.positionAndRotation.tests.js',
  16. './tests/unit/babylon/serializers/babylon.glTFSerializer.tests.js',
  17. './tests/unit/babylon/src/babylon.node.tests.js',
  18. './tests/unit/babylon/src/Animations/babylon.animation.tests.js',
  19. './tests/unit/babylon/src/Animations/babylon.animationGroup.tests.js',
  20. './tests/unit/babylon/src/Cameras/babylon.pointerInput.tests.js',
  21. './tests/unit/babylon/src/Culling/babylon.ray.tests.js',
  22. './tests/unit/babylon/src/Loading/babylon.sceneLoader.tests.js',
  23. './tests/unit/babylon/src/PostProcesses/babylon.postProcess.tests.js',
  24. './tests/unit/babylon/src/Materials/babylon.material.tests.js',
  25. './tests/unit/babylon/src/Meshes/babylon.dictionaryMode.tests.js',
  26. './tests/unit/babylon/src/Meshes/babylon.geometry.tests.js',
  27. './tests/unit/babylon/src/Meshes/babylon.mesh.vertexData.tests.js',
  28. './tests/unit/babylon/src/Misc/babylon.promise.tests.js',
  29. { pattern: 'dist/preview release/**/*.js', watched: false, included: false, served: true },
  30. { pattern: 'assets/**/*', watched: false, included: false, served: true },
  31. //{ pattern: 'tests/**/*', watched: false, included: false, served: true },
  32. { pattern: 'Playground/scenes/**/*', watched: false, included: false, served: true },
  33. { pattern: 'Playground/textures/**/*', watched: false, included: false, served: true },
  34. { pattern: 'Playground/sounds/**/*', watched: false, included: false, served: true },
  35. { pattern: 'Tools/Config/config.json', watched: false, included: false, served: true },
  36. ],
  37. proxies: {
  38. '/': '/base/'
  39. },
  40. port: 3000,
  41. colors: true,
  42. autoWatch: false,
  43. singleRun: false,
  44. // level of logging
  45. // possible values: config.LOG_DISABLE || config.LOG_ERROR || config.LOG_WARN || config.LOG_INFO || config.LOG_DEBUG
  46. logLevel: config.LOG_INFO,
  47. reporters: ['progress', 'junit'],
  48. plugins: [
  49. 'karma-mocha',
  50. 'karma-chai',
  51. 'karma-sinon',
  52. 'karma-chrome-launcher',
  53. 'karma-firefox-launcher',
  54. require('../../Tools/Gulp/helpers/gulp-karmaJunitPlugin')
  55. ],
  56. junitReporter: {
  57. outputDir: '.temp/testResults', // results will be saved as $outputDir/$browserName.xml
  58. outputFile: 'UnitTests.xml', // if included, results will be saved as $outputDir/$browserName/$outputFile
  59. suite: 'Unit Tests', // suite will become the package name attribute in xml testsuite element
  60. useBrowserName: false, // add browser name to report and classes names
  61. nameFormatter: undefined, // function (browser, result) to customize the name attribute in xml testcase element
  62. classNameFormatter: undefined, // function (browser, result) to customize the classname attribute in xml testcase element
  63. properties: {} // key value pair of properties to add to the <properties> section of the report
  64. },
  65. browsers: ['ChromeHeadless']
  66. })
  67. }