69 lines
1.6 KiB
JavaScript

module.exports = function (config) {
return {
basePath: '../..',
frameworks: ['mocha'],
// list of files / patterns to load in the browser
files: [
'test/browser-test-config/browser-tests.test.js'
],
preprocessors: {
'**/*.js': ['webpack']
},
captureTimeout: 210000,
browserDisconnectTolerance: 3, // this one helps
browserDisconnectTimeout: 210000,
browserNoActivityTimeout: 210000,
// web server port
port: 9876,
// enable / disable colors in the output (reporters and logs)
colors: true,
// level of logging
// possible values: config.LOG_DISABLE || config.LOG_ERROR || config.LOG_WARN || config.LOG_INFO || config.LOG_DEBUG
logLevel: config.LOG_INFO,
// enable / disable watching file and executing tests whenever any file changes
autoWatch: false,
// Continuous Integration mode
// if true, Karma captures browsers, runs the tests and exits
singleRun: true,
// Concurrency level
// how many browser should be started simultaneous
concurrency: Infinity,
webpack: {
// don't use esm
mode: 'development',
resolve: {
// unless we disallow .mjs files here the tests fail
// due to decimal.mjs being imported.
extensions: ['.js', '.json'],
// same as above, disallow 'module' field to prevent
// decimal.mjs from breaking tests.
mainFields: ['browser', 'main']
},
module: {
rules: [
{
test: /\.js$/,
exclude: /node_modules/,
use: 'babel-loader'
}
]
}
}
}
}