redeyed-shebang.js 637 B

1234567891011121314151617181920212223242526
  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('preserves shebang', function (t) {
  10. var code = [
  11. '#!/usr/bin/env node'
  12. , 'var util = require("util");'
  13. ].join('\n')
  14. , opts = { Keyword: { 'var': '%:^' } }
  15. , expected = [
  16. '#!/usr/bin/env node'
  17. , '%var^ util = require("util");'
  18. ].join('\n')
  19. , res = redeyed(code, opts).code
  20. t.equals(res, expected, inspect(code) + ' opts: ' + inspect(opts) + ' => ' + inspect(expected))
  21. t.end()
  22. })