unprefix.js 901 B

12345678910111213141516171819202122232425262728293031323334
  1. var test = require('tape');
  2. var vm = require('vm');
  3. var concat = require('concat-stream');
  4. var path = require('path');
  5. var insert = require('../');
  6. var bpack = require('browser-pack');
  7. var mdeps = require('module-deps');
  8. test('unprefix - remove shebang and bom', function (t) {
  9. t.plan(3);
  10. var file = path.join(__dirname, 'unprefix', 'main.js');
  11. var deps = mdeps();
  12. var pack = bpack({ raw: true });
  13. deps.pipe(pack);
  14. pack.pipe(concat(function (src) {
  15. var c = {};
  16. vm.runInNewContext('require=' + src, c);
  17. var x = c.require(file);
  18. t.equal(x.filename, '/hello.js');
  19. t.equal(x.dirname, '/');
  20. t.notOk(/\ufeff/.test(src.toString()));
  21. }));
  22. deps.write({ transform: inserter, global: true });
  23. deps.end(file);
  24. });
  25. function inserter (file) {
  26. return insert(file, { basedir: __dirname + '/unprefix' });
  27. }