1 | var browserify = require('../');
|
2 | var path = require('path');
|
3 | var vm = require('vm');
|
4 | var test = require('tap').test;
|
5 |
|
6 | var expected = [
|
7 | readpkg('pkg_event'),
|
8 | readpkg('pkg_event/node_modules/aaa'),
|
9 | readpkg('pkg_event/node_modules/aaa/lib')
|
10 | ];
|
11 |
|
12 | test('package event', function (t) {
|
13 | t.plan(2 + expected.length);
|
14 |
|
15 | var b = browserify(__dirname + '/pkg_event/main.js');
|
16 | b.on('package', function (pkg) {
|
17 | t.deepEqual(pkg, expected.shift());
|
18 | });
|
19 |
|
20 | b.bundle(function (err, src) {
|
21 | t.ifError(err);
|
22 | vm.runInNewContext(src, { console: { log: log } });
|
23 | function log (msg) { t.equal(msg, 555) }
|
24 | });
|
25 | });
|
26 |
|
27 | function readpkg (dir) {
|
28 | var pkg = require(path.join(__dirname, dir, 'package.json'));
|
29 | pkg.__dirname = path.join(__dirname, dir);
|
30 | return pkg;
|
31 | }
|