immediate.js 992 B

123456789101112131415161718192021222324252627282930
  1. var test = require('tape');
  2. var mdeps = require('module-deps');
  3. var bpack = require('browser-pack');
  4. var insert = require('../');
  5. var concat = require('concat-stream');
  6. var vm = require('vm');
  7. test('immediate', function (t) {
  8. t.plan(3);
  9. var deps = mdeps({
  10. modules: { timers: require.resolve('timers-browserify') }
  11. });
  12. var pack = bpack({ raw: true, hasExports: true });
  13. deps.pipe(pack).pipe(concat(function (src) {
  14. var c = {
  15. setTimeout: setTimeout,
  16. clearTimeout: clearTimeout,
  17. T: t
  18. };
  19. t.ok(/require\("timers"\)/.test(src), 'timers required in source');
  20. t.notOk(/require\("\//.test(src), 'absolute path not required in source');
  21. vm.runInNewContext(src, c);
  22. }));
  23. deps.write({ transform: inserter, global: true });
  24. deps.end({ id: 'main', file: __dirname + '/immediate/main.js' });
  25. });
  26. function inserter (file) {
  27. return insert(file, { basedir: __dirname + '/immediate' });
  28. }