env_fn.js 483 B

123456789101112131415161718192021
  1. 'use strict';
  2. var test = require('tape');
  3. var parse = require('../').parse;
  4. function getEnv() {
  5. return 'xxx';
  6. }
  7. function getEnvObj() {
  8. return { op: '@@' };
  9. }
  10. test('functional env expansion', function (t) {
  11. t.plan(4);
  12. t.same(parse('a $XYZ c', getEnv), ['a', 'xxx', 'c']);
  13. t.same(parse('a $XYZ c', getEnvObj), ['a', { op: '@@' }, 'c']);
  14. t.same(parse('a${XYZ}c', getEnvObj), ['a', { op: '@@' }, 'c']);
  15. t.same(parse('"a $XYZ c"', getEnvObj), ['a ', { op: '@@' }, ' c']);
  16. });