var path = require('path'); const CONTEXT = path.resolve(__dirname); const SCSS_DIR = path.resolve(CONTEXT, 'scss'); const PROJECT_DIR = path.resolve(CONTEXT, 'src'); const TESTS_DIR = path.resolve(CONTEXT, 'tests'); const ENTRY_POINT = path.resolve(TESTS_DIR, '__entry__.js'); module.exports = function (config) { config.set({ basePath: '.', browsers: ['jsdom'], frameworks: ['jasmine'], files: [ENTRY_POINT], junitReporter: { outputDir: '', outputFile: 'test-results.xml', suite: 'homehub_frontend', useBrowserName: false, }, mochaReporter: { ignoreSkipped: true, }, preprocessors: { [ENTRY_POINT]: ['webpack', 'sourcemap'], }, reporters: ['mocha'], singleRun: false, webpack: { mode: 'development', devtool: 'inline-source-map', module: { rules: [ { test: /\.js?/, include: PROJECT_DIR, use: ['babel-loader'], }, { test: /\.js$/, include: TESTS_DIR, use: ['babel-loader'], }, { test: /\.scss$/, use: ['null-loader'], }, { test: /\.(png|svg)$/, use: ['null-loader'], }, ], }, resolve: { alias: { 'scss': SCSS_DIR, 'src': PROJECT_DIR, 'tests': TESTS_DIR, }, }, externals: { 'cheerio': 'window', 'react/addons': 'react', 'react/lib/ExecutionEnvironment': 'react', 'react/lib/ReactContext': 'react', }, }, }); };