1 | var browserify = require('../');
|
2 | var vm = require('vm');
|
3 | var test = require('tap').test;
|
4 | var through = require('through2');
|
5 | var xtend = require('xtend');
|
6 |
|
7 | test('double bundle json', function (t) {
|
8 | t.plan(6);
|
9 | var expected0 = [ 'a=500', 'b=500' ];
|
10 | var expected1 = [ 'a=500', 'b=500' ];
|
11 |
|
12 | function log0 (msg) { t.equal(msg, expected0.shift()) }
|
13 | function log1 (msg) { t.equal(msg, expected1.shift()) }
|
14 |
|
15 | var cache = {};
|
16 | var b = browserify(__dirname + '/double_bundle_json/index.js', {
|
17 | cache: cache
|
18 | });
|
19 | b.pipeline.get('deps').push(through.obj(function(row, enc, next) {
|
20 | cache[row.file] = {
|
21 | source: row.source,
|
22 | deps: xtend(row.deps)
|
23 | };
|
24 | this.push(row);
|
25 | next();
|
26 | }));
|
27 | b.bundle(function (err, src0) {
|
28 | t.ifError(err);
|
29 | vm.runInNewContext(src0, { console: { log: log0 } });
|
30 | delete cache[__dirname + '/double_bundle_json/index.js'];
|
31 |
|
32 | b.bundle(function (err, src1) {
|
33 | t.ifError(err);
|
34 | vm.runInNewContext(src1, { console: { log: log1 } });
|
35 | });
|
36 | });
|
37 | });
|