module.exports = function (config) {
  config.set({
    frameworks: ["mocha", "phantomjs-shim"],
    reporters: ["spec"],
    browsers: ["PhantomJS"],
    basePath: ".", // repository root.
    files: [
      // Sinon has issues with webpack. Do global include.
      archDevRequire.resolve("sinon/pkg/sinon"),

      // Test bundle (must be created via `npm run dev|hot|server-test`)
      "http://127.0.0.1:3001/assets/main.js"
    ],
    port: 9999,
    singleRun: true,
    client: {
      mocha: {
        ui: "bdd"
      }
    }
  });
};
"use strict";

var archDevRequire = require("builder-victory-component-dev/require");
var _ = archDevRequire("lodash");
var base = require("./webpack.config.dev");

// Clone our own module object.
var mod = _.cloneDeep(base.module);
var firstLoader = mod.loaders[0];

// Update loaders array. First loader needs react-hot-loader.
firstLoader.loaders = [archDevRequire.resolve("react-hot-loader")]
  .concat(firstLoader.loader ? [firstLoader.loader] : [])
  .concat(firstLoader.loaders || []);

// Remove single loader if any.
firstLoader.loader = null;

module.exports = _.merge({}, _.omit(base, "entry", "module"), {
  entry: {
    app: [
      archDevRequire.resolve("webpack/hot/only-dev-server"),
      "./demo/app"
    ]
  },

  module: mod
});
    alias: {
      // enzyme webpack issue https://github.com/airbnb/enzyme/issues/47
      sinon: "node_modules/sinon/pkg/sinon.js",
      // Allow root import of `src/FOO` from ROOT/src.
      src: path.join(ROOT, "src")
    }
  }),
  // enzyme webpack issue https://github.com/airbnb/enzyme/issues/47
  // Please note that externals may have to change for versions of React
  // other than 0.14.x
  externals: {
    "react/lib/ExecutionEnvironment": true,
    "react/lib/ReactContext": true,
    "text-encoding": "window"
  },
  module: _.assign({}, prodCfg.module, {
    // enzyme webpack issue https://github.com/airbnb/enzyme/issues/47
    noParse: [
      /\/sinon\.js/
    ],
    // enzyme webpack issue https://github.com/airbnb/enzyme/issues/47
    loaders: (prodCfg.module.loaders || []).concat([
      {
        test: /\.json$/,
        loader: archDevRequire.resolve("json-loader")
      }
    ])
  }),
  devtool: "source-map"
};