webpack.test.conf.js 1.0 KB

123456789101112131415161718192021222324252627282930313233343536373839
  1. // This is the webpack config used for unit tests.
  2. var utils = require('./utils')
  3. var webpack = require('webpack')
  4. var merge = require('webpack-merge')
  5. var baseConfig = require('./webpack.base.conf')
  6. const JavaScriptObfuscator = require('webpack-obfuscator');
  7. var webpackConfig = merge(baseConfig, {
  8. // use inline sourcemap for karma-sourcemap-loader
  9. module: {
  10. rules: utils.styleLoaders()
  11. },
  12. devtool: '#inline-source-map',
  13. resolveLoader: {
  14. alias: {
  15. // necessary to to make lang="scss" work in test when using vue-loader's ?inject option
  16. // see discussion at https://github.com/vuejs/vue-loader/issues/724
  17. 'scss-loader': 'sass-loader'
  18. }
  19. },
  20. plugins: [
  21. new JavaScriptObfuscator({
  22. compact: true,
  23. rotateStringArray: true,
  24. stringArrayEncoding: true,
  25. stringArray: true,
  26. rotateUnicodeArray: true
  27. }, []),
  28. new webpack.DefinePlugin({
  29. 'process.env': require('../config/test.env')
  30. })
  31. ]
  32. })
  33. // no need for app entry during tests
  34. delete webpackConfig.entry
  35. module.exports = webpackConfig