JAVASCRIPT   62

array.js

Guest on 10th October 2021 02:18:21 PM

  1. var browserify = require('../');
  2. var vm = require('vm');
  3. var test = require('tap').test;
  4.  
  5. test('array add', function (t) {
  6.     var expected = [ 'ONE', 'TWO', 'THREE' ];
  7.     t.plan(expected.length);
  8.    
  9.     var b = browserify();
  10.     var files = [
  11.         __dirname + '/array/one.js',
  12.         __dirname + '/array/two.js',
  13.         __dirname + '/array/three.js'
  14.     ];
  15.     b.add(files);
  16.     b.bundle(function (err, src) {
  17.         vm.runInNewContext(src, { console: { log: log } });
  18.         function log (msg) {
  19.             t.equal(msg, expected.shift());
  20.         }
  21.     });
  22. });
  23.  
  24. test('array require', function (t) {
  25.     t.plan(3);
  26.    
  27.     var b = browserify();
  28.     var files = [ 'defined', 'subarg' ];
  29.     b.require(files);
  30.     b.bundle(function (err, src) {
  31.         var c = {};
  32.         vm.runInNewContext(src, c);
  33.  
  34.         t.equal(c.require('defined')(undefined, true), true);
  35.         t.equal(c.require('defined')(undefined, false), false);
  36.         t.deepEqual(c.require('subarg')(['-x', '3']), { x: 3, _: [] });
  37.     });
  38. });
  39.  
  40. test('array require opts', function (t) {
  41.     t.plan(3);
  42.    
  43.     var b = browserify();
  44.     var files = [
  45.         { file: require.resolve('defined'), expose: 'abc' },
  46.         { file: require.resolve('subarg'), expose: 'def' }
  47.     ];
  48.     b.require(files);
  49.     b.bundle(function (err, src) {
  50.         var c = {};
  51.         vm.runInNewContext(src, c);
  52.  
  53.         t.equal(c.require('abc')(undefined, true), true);
  54.         t.equal(c.require('abc')(undefined, false), false);
  55.         t.deepEqual(c.require('def')(['-x', '3']), { x: 3, _: [] });
  56.     });
  57. });
  58.  
  59. test('array external', function (t) {
  60.     t.plan(2);
  61.    
  62.     var b = browserify(__dirname + '/external/main.js');
  63.     b.external(['util','freelist']);
  64.     b.bundle(function (err, src) {
  65.         if (err) return t.fail(err);
  66.         vm.runInNewContext(
  67.             'function require (x) {'
  68.             + 'if (x==="freelist") return function (n) { return n + 1000 }'
  69.             + '}'
  70.             + src,
  71.             { t: t }
  72.         );
  73.     });
  74. });

Raw Paste


Login or Register to edit or fork this paste. It's free.