UNPKG

2.42 kBJavaScriptView Raw
1var browserify = require('../');
2var vm = require('vm');
3var test = require('tap').test;
4
5if (!ArrayBuffer.isView) ArrayBuffer.isView = function () { return false; };
6
7test('global', function (t) {
8 t.plan(2);
9
10 var b = browserify();
11 b.add(__dirname + '/global/main.js');
12 b.bundle(function (err, src) {
13 var c = {
14 t : t,
15 a : 555,
16 };
17 c.self = c;
18 vm.runInNewContext(src, c);
19 });
20});
21
22test('__filename and __dirname with insertGlobals: true', function (t) {
23 t.plan(2);
24
25 var b = browserify({
26 insertGlobals: true,
27 basedir: __dirname + '/global'
28 });
29 b.require(__dirname + '/global/filename.js', { expose: 'x' });
30 b.bundle(function (err, src) {
31 var c = { Uint8Array: Uint8Array };
32 c.self = c;
33 vm.runInNewContext(src, c);
34 var x = c.require('x');
35 t.equal(x.filename, '/filename.js');
36 t.equal(x.dirname, '/');
37 });
38});
39
40test('__filename and __dirname', function (t) {
41 t.plan(2);
42
43 var b = browserify({ basedir: __dirname + '/global' });
44 b.require(__dirname + '/global/filename.js', { expose: 'x' });
45 b.bundle(function (err, src) {
46 var c = {};
47 vm.runInNewContext(src, c);
48 var x = c.require('x');
49 t.equal(x.filename, '/filename.js');
50 t.equal(x.dirname, '/');
51 });
52});
53
54test('__filename and __dirname with basedir', function (t) {
55 t.plan(2);
56
57 var b = browserify({ basedir: __dirname });
58 b.require(__dirname + '/global/filename.js', { expose: 'x' });
59 b.bundle(function (err, src) {
60 var c = {};
61 vm.runInNewContext(src, c);
62 var x = c.require('x');
63 t.equal(x.filename, '/global/filename.js');
64 t.equal(x.dirname, '/global');
65 });
66});
67
68test('process.nextTick', function (t) {
69 t.plan(1);
70
71 var b = browserify();
72 b.add(__dirname + '/global/tick.js');
73 b.bundle(function (err, src) {
74 var c = { t: t, setTimeout: setTimeout, clearTimeout: clearTimeout };
75 vm.runInNewContext(src, c);
76 });
77});
78
79test('Buffer', function (t) {
80 t.plan(2);
81
82 var b = browserify();
83 b.add(__dirname + '/global/buffer.js');
84 b.bundle(function (err, src) {
85 var c = {
86 t: t,
87 Uint8Array: Uint8Array,
88 ArrayBuffer: ArrayBuffer
89 };
90 vm.runInNewContext(src, c);
91 });
92});