redeyed-shebang.js 610 B

123456789101112131415161718192021222324
  1. 'use strict';
  2. /*jshint asi: true*/
  3. var test = require('tap').test
  4. , util = require('util')
  5. , redeyed = require('..')
  6. function inspect (obj) {
  7. return util.inspect(obj, false, 5, true)
  8. }
  9. test('removes shebang from the code before parsing it', function (t) {
  10. var code = [
  11. '#!/usr/bin/env node'
  12. , 'var util = require("util");'
  13. ].join('\n')
  14. , opts = { Keyword: { 'var': '%:^' } }
  15. , expected = '\n%var^ util = require("util");'
  16. , res = redeyed(code, opts).code
  17. t.equals(res, expected, inspect(code) + ' opts: ' + inspect(opts) + ' => ' + inspect(expected))
  18. t.end()
  19. })