1.0.2 • Published 2 years ago

webpack-fixture v1.0.2

Weekly downloads
-
License
MIT
Repository
github
Last release
2 years ago

webpack-fixture

The fixture is needed to create webpack compilation tests.

The result of the function execution returns:

  • compiler This instance can be used to manually trigger the webpack runner or have it build and watch for changes

  • volume is an instance of Volume constructor, it is the default volume created for your convenience

  • fs is an fs-like object created from vol using createFsFromVolume(vol)

Usage

import webpack from 'webpack';
import webpackFixture from 'webpack-fixture';

const webpackConfig:webpack.Configuration  = {
  entry: '/index.js',
  mode: 'production',
  output: {
    filename: 'bundle.js',
    path: '/build',
  },
};

const { compiler, fs, volume } = webpackFixture(webpackConfig);
fs.writeFileSync('/index.js', `
console.log(1)
const _ = 1;
console.log(2)
`);

const { err, stats } = await new Promise((resolve) => {
  compiler.run((err, stats) => {
    resolve({ err, stats });
  });
});

const volumeJon = volume.toJSON();

/*
volumeJon['/index.js'] => `
console.log(1)
const _ = 1;
console.log(2)
`

volumeJon['/build/bundle.js'] => `console.log(1),console.log(2);`
*/
1.0.2

2 years ago

1.0.1

2 years ago

1.0.0

2 years ago