1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66
|
import ExtractTextPlugin from '../src';
const loader = require.resolve('../src/loader');
describe('Define Fallback', () => {
it('accepts a fallback string', () => {
expect(ExtractTextPlugin.extract({
fallback: 'style-loader',
use: 'css-loader',
})).toEqual([
{ loader, options: { omit: 1, remove: true } },
{ loader: 'style-loader' },
{ loader: 'css-loader' },
]);
});
it('accepts a fallback string with legacy fallbackLoader option', () => {
expect(ExtractTextPlugin.extract({
fallback: 'style-loader',
use: 'css-loader',
})).toEqual([
{ loader, options: { omit: 1, remove: true } },
{ loader: 'style-loader' },
{ loader: 'css-loader' },
]);
});
it('accepts a chained fallback string', () => {
expect(ExtractTextPlugin.extract({
fallback: 'something-loader!style-loader',
use: 'css-loader',
})).toEqual([
{ loader, options: { omit: 2, remove: true } },
{ loader: 'something-loader' },
{ loader: 'style-loader' },
{ loader: 'css-loader' },
]);
});
it('accepts a fallback object', () => {
expect(ExtractTextPlugin.extract({
fallback: { loader: 'style-loader' },
use: 'css-loader',
})).toEqual([
{ loader, options: { omit: 1, remove: true } },
{ loader: 'style-loader' },
{ loader: 'css-loader' },
]);
});
it('accepts an array of fallback objects', () => {
expect(ExtractTextPlugin.extract({
fallback: [
{ loader: 'something-loader' },
{ loader: 'style-loader' },
],
use: 'css-loader',
})).toEqual([
{ loader, options: { omit: 2, remove: true } },
{ loader: 'something-loader' },
{ loader: 'style-loader' },
{ loader: 'css-loader' },
]);
});
});
|