1 | var browserify = require('../');
|
2 | var vm = require('vm');
|
3 | var test = require('tap').test;
|
4 |
|
5 | test('standalone', function (t) {
|
6 | t.plan(3);
|
7 |
|
8 | var b = browserify(__dirname + '/standalone/main.js', {
|
9 | standalone: 'stand-test'
|
10 | });
|
11 | b.bundle(function (err, src) {
|
12 | t.test('window global', function (t) {
|
13 | t.plan(2);
|
14 | var c = {
|
15 | window: {},
|
16 | done : done(t)
|
17 | };
|
18 | vm.runInNewContext(src + 'window.standTest(done)', c);
|
19 | });
|
20 | t.test('CommonJS', function (t) {
|
21 | t.plan(2);
|
22 | var exp = {};
|
23 | var c = {
|
24 | module: { exports: exp },
|
25 | exports: exp,
|
26 | done : done(t)
|
27 | };
|
28 | vm.runInNewContext(src + 'module.exports(done)', c);
|
29 | });
|
30 | t.test('RequireJS', function (t) {
|
31 | t.plan(2);
|
32 | var c = {
|
33 | define: function (dependencies, fn) {
|
34 | fn()(done(t));
|
35 | }
|
36 | };
|
37 | c.define.amd = true;
|
38 | vm.runInNewContext(src, c);
|
39 | });
|
40 | });
|
41 | });
|
42 |
|
43 | test('A.B.C standalone', function (t) {
|
44 | t.plan(3);
|
45 |
|
46 | var b = browserify(__dirname + '/standalone/main.js', {
|
47 | standalone: 'A.B.C'
|
48 | });
|
49 | b.bundle(function (err, src) {
|
50 | t.test('window global', function (t) {
|
51 | t.plan(2);
|
52 | var c = { window: {} };
|
53 | vm.runInNewContext(src, c);
|
54 | c.window.A.B.C(done(t));
|
55 | });
|
56 | t.test('CommonJS', function (t) {
|
57 | t.plan(2);
|
58 | var exp = {};
|
59 | var c = {
|
60 | module: { exports: exp },
|
61 | exports: exp
|
62 | };
|
63 | vm.runInNewContext(src, c);
|
64 | c.module.exports(done(t));
|
65 | });
|
66 | t.test('RequireJS', function (t) {
|
67 | t.plan(2);
|
68 | var c = {
|
69 | define: function (dependencies, fn) {
|
70 | fn()(done(t));
|
71 | }
|
72 | };
|
73 | c.define.amd = true;
|
74 | vm.runInNewContext(src, c);
|
75 | });
|
76 | });
|
77 | });
|
78 |
|
79 | function done(t) {
|
80 | return function (one, two) {
|
81 | t.equal(one, 1);
|
82 | t.equal(two, 2);
|
83 | t.end();
|
84 | };
|
85 | }
|