pack.js
902 Bytes
var browserify = require('../');
var vm = require('vm');
var through = require('through2');
var test = require('tap').test;
var fs = require('fs');
var sources = {
1: fs.readFileSync(__dirname + '/entry/main.js', 'utf8'),
2: fs.readFileSync(__dirname + '/entry/one.js', 'utf8'),
3: fs.readFileSync(__dirname + '/entry/two.js', 'utf8')
};
var deps = {
1: { './two': 3, './one': 2 },
2: {},
3: {}
};
test('custom packer', function (t) {
t.plan(7);
var b = browserify(__dirname + '/entry/main.js');
b.pipeline.get('pack').splice(0,1, through.obj(function (row, enc, next) {
t.equal(sources[row.id], row.source);
t.deepEqual(deps[row.id], row.deps);
this.push(row.id + '\n');
next();
}));
b.pipeline.get('wrap').splice(0);
b.bundle(function (err, src) {
t.equal(src.toString('utf8'), '1\n2\n3\n');
});
});