var parse = require('../'); var test = require('tape'); test('numeric short args', function (t) { t.plan(2); t.deepEqual(parse([ '-n123' ]), { n: 123, _: [] }); t.deepEqual( parse([ '-123', '456' ]), { 1: true, 2: true, 3: 456, _: [] } ); }); test('short', function (t) { t.deepEqual( parse([ '-b' ]), { b : true, _ : [] }, 'short boolean' ); t.deepEqual( parse([ 'foo', 'bar', 'baz' ]), { _ : [ 'foo', 'bar', 'baz' ] }, 'bare' ); t.deepEqual( parse([ '-cats' ]), { c : true, a : true, t : true, s : true, _ : [] }, 'group' ); t.deepEqual( parse([ '-cats', 'meow' ]), { c : true, a : true, t : true, s : 'meow', _ : [] }, 'short group next' ); t.deepEqual( parse([ '-h', 'localhost' ]), { h : 'localhost', _ : [] }, 'short capture' ); t.deepEqual( parse([ '-h', 'localhost', '-p', '555' ]), { h : 'localhost', p : 555, _ : [] }, 'short captures' ); t.end(); }); test('mixed short bool and capture', function (t) { t.same( parse([ '-h', 'localhost', '-fp', '555', 'script.js' ]), { f : true, p : 555, h : 'localhost', _ : [ 'script.js' ] } ); t.end(); }); test('short and long', function (t) { t.deepEqual( parse([ '-h', 'localhost', '-fp', '555', 'script.js' ]), { f : true, p : 555, h : 'localhost', _ : [ 'script.js' ] } ); t.end(); });