Reorganize karma and webpack configs

This commit is contained in:
Nicolas Gallagher
2016-03-10 08:52:37 -08:00
parent 83e4c68461
commit c589d79035
6 changed files with 17 additions and 27 deletions

View File

@@ -1,11 +0,0 @@
var path = require('path')
var ROOT = path.join(__dirname, '..')
module.exports = {
DIST_DIRECTORY: path.join(ROOT, 'dist'),
EXAMPLES_DIRECTORY: path.join(ROOT, 'examples'),
SRC_DIRECTORY: path.join(ROOT, 'src'),
ROOT_DIRECTORY: ROOT,
TEST_ENTRY: path.join(ROOT, 'tests.webpack.js')
}

View File

@@ -70,7 +70,6 @@ module.exports = {
// ...
plugins: [
new webpack.DefinePlugin({
'Platform.OS': 'web',
'process.env.NODE_ENV': JSON.stringify('production')
})
}

View File

@@ -1,13 +1,14 @@
const constants = require('./constants')
const path = require('path')
const webpack = require('webpack')
const EXAMPLES_DIRECTORY = __dirname
module.exports = {
devServer: {
contentBase: constants.EXAMPLES_DIRECTORY
contentBase: EXAMPLES_DIRECTORY
},
entry: {
example: constants.EXAMPLES_DIRECTORY
example: EXAMPLES_DIRECTORY
},
module: {
loaders: [
@@ -20,7 +21,7 @@ module.exports = {
]
},
output: {
filename: 'examples.js'
filename: 'bundle.js'
},
plugins: [
new webpack.DefinePlugin({

View File

@@ -1,9 +1,9 @@
var constants = require('./constants')
var webpack = require('webpack')
var testEntry = 'tests.webpack.js'
module.exports = function (config) {
config.set({
basePath: constants.ROOT_DIRECTORY,
browsers: process.env.TRAVIS ? [ 'Firefox' ] : [ 'Chrome' ],
browserNoActivityTimeout: 60000,
client: {
@@ -12,7 +12,7 @@ module.exports = function (config) {
useIframe: true
},
files: [
constants.TEST_ENTRY
testEntry
],
frameworks: [ 'mocha' ],
plugins: [
@@ -24,7 +24,7 @@ module.exports = function (config) {
'karma-webpack'
],
preprocessors: {
[constants.TEST_ENTRY]: [ 'webpack', 'sourcemap' ]
[testEntry]: [ 'webpack', 'sourcemap' ]
},
reporters: process.env.TRAVIS ? [ 'dots' ] : [ 'spec' ],
singleRun: true,

View File

@@ -8,11 +8,11 @@
],
"scripts": {
"build": "rm -rf ./dist && mkdir dist && babel src -d dist --ignore **/__tests__,src/modules/specHelpers",
"build:umd": "webpack --config config/webpack.config.js --sort-assets-by --progress",
"examples": "webpack-dev-server --config config/webpack.config.example.js --inline --hot --colors --quiet",
"lint": "eslint config src",
"build:umd": "webpack --config webpack.config.js --sort-assets-by --progress",
"examples": "webpack-dev-server --config examples/webpack.config.js --inline --hot --colors --quiet",
"lint": "eslint src",
"prepublish": "npm run build && npm run build:umd",
"test": "karma start config/karma.config.js",
"test": "karma start karma.config.js",
"test:watch": "npm run test -- --no-single-run"
},
"dependencies": {

View File

@@ -1,9 +1,10 @@
var constants = require('./constants')
var webpack = require('webpack')
const DIST_DIRECTORY = './dist'
module.exports = {
entry: {
main: constants.DIST_DIRECTORY
main: DIST_DIRECTORY
},
externals: [{
'react': true,
@@ -14,7 +15,7 @@ module.exports = {
filename: 'react-native-web.js',
library: 'ReactNativeWeb',
libraryTarget: 'umd',
path: constants.DIST_DIRECTORY
path: DIST_DIRECTORY
},
plugins: [
new webpack.DefinePlugin({ 'process.env.NODE_ENV': JSON.stringify('production') }),