karma.conf.js 1.6 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677
  1. module.exports = function(config) {
  2. config.set({
  3. plugins: [
  4. 'karma-jasmine',
  5. 'karma-mocha-reporter',
  6. 'karma-chrome-launcher',
  7. require('./lib'),
  8. ],
  9. frameworks: ['jasmine'],
  10. reporters: ['mocha'],
  11. browsers: ['ChromeHeadless'],
  12. logLevel: config.LOG_INFO, // disable > error > warn > info > debug
  13. captureTimeout: 60000,
  14. autoWatch: true,
  15. singleRun: true,
  16. colors: true,
  17. port: 9876,
  18. basePath: '',
  19. files: [
  20. { pattern: 'test/t1.js', watched: false },
  21. { pattern: 'test/t2.js', watched: false },
  22. { pattern: 'test/t3.js', watched: false },
  23. { pattern: 'test/t4.ts', watched: false },
  24. ],
  25. exclude: [],
  26. preprocessors: {
  27. 'test/t1.js': ['rollup'],
  28. 'test/t2.js': ['rollup'],
  29. 'test/t3.js': ['rollupNode'],
  30. 'test/t4.ts': ['rollupNodeTypescript'],
  31. },
  32. rollupPreprocessor: {
  33. output: {
  34. name: 'lib',
  35. format: 'iife',
  36. sourcemap: 'inline',
  37. },
  38. plugins: [require('rollup-plugin-buble')()],
  39. },
  40. customPreprocessors: {
  41. rollupNode: {
  42. base: 'rollup',
  43. options: {
  44. plugins: [
  45. require('rollup-plugin-node-resolve')(),
  46. require('rollup-plugin-commonjs')(),
  47. require('rollup-plugin-buble')(),
  48. ],
  49. },
  50. },
  51. rollupNodeTypescript: {
  52. base: 'rollup',
  53. options: {
  54. plugins: [
  55. require('rollup-plugin-node-resolve')({
  56. extensions: ['.js', '.ts'],
  57. }),
  58. require('rollup-plugin-commonjs')({
  59. include: 'node_modules/**',
  60. extensions: ['.js', '.ts'],
  61. }),
  62. require('rollup-plugin-babel')({
  63. exclude: 'node_modules/**',
  64. extensions: ['.js', '.ts'],
  65. }),
  66. ],
  67. },
  68. },
  69. },
  70. })
  71. }