xref: /openbmc/phosphor-webui/karma.conf.js (revision bbcf670a1c8c7463556eb006bc8f6bbfe29af3e4)
1// Reference: http://karma-runner.github.io/0.12/config/configuration-file.html
2module.exports = function karmaConfig (config) {
3  config.set({
4    frameworks: [
5      // Reference: https://github.com/karma-runner/karma-jasmine
6      // Set framework to jasmine
7      'jasmine'
8    ],
9
10    reporters: [
11      // Reference: https://github.com/mlex/karma-spec-reporter
12      // Set reporter to print detailed results to console
13      'progress',
14
15      // Reference: https://github.com/karma-runner/karma-coverage
16      // Output code coverage files
17      'coverage'
18    ],
19
20    files: [
21      // Grab all files in the app folder that contain .spec.
22      'src/tests.webpack.js'
23    ],
24
25    preprocessors: {
26      // Reference: http://webpack.github.io/docs/testing.html
27      // Reference: https://github.com/webpack/karma-webpack
28      // Convert files with webpack and load sourcemaps
29      'src/tests.webpack.js': ['webpack', 'sourcemap']
30    },
31
32    browsers: [
33      // Run tests using PhantomJS
34      'PhantomJS'
35    ],
36
37    singleRun: true,
38
39    // Configure code coverage reporter
40    coverageReporter: {
41      dir: 'coverage/',
42      reporters: [
43        {type: 'text-summary'},
44        {type: 'html'}
45      ]
46    },
47
48    webpack: require('./webpack.config'),
49
50    // Hide webpack build information from output
51    webpackMiddleware: {
52      noInfo: 'errors-only'
53    }
54  });
55};
56