Spaces:
Sleeping
Sleeping
const TestRunner = require('test-runner') | |
const commandLineArgs = require('../') | |
const a = require('assert') | |
const runner = new TestRunner() | |
runner.test('camel-case: regular', function () { | |
const optionDefinitions = [ | |
{ name: 'one-two' }, | |
{ name: 'three', type: Boolean } | |
] | |
const argv = [ '--one-two', '1', '--three' ] | |
const result = commandLineArgs(optionDefinitions, { argv, camelCase: true }) | |
a.deepStrictEqual(result, { | |
oneTwo: '1', | |
three: true | |
}) | |
}) | |
runner.test('camel-case: grouped', function () { | |
const optionDefinitions = [ | |
{ name: 'one-one', group: 'a' }, | |
{ name: 'two-two', group: 'a' }, | |
{ name: 'three-three', group: 'b', type: Boolean }, | |
{ name: 'four-four' } | |
] | |
const argv = [ '--one-one', '1', '--two-two', '2', '--three-three', '--four-four', '4' ] | |
const result = commandLineArgs(optionDefinitions, { argv, camelCase: true }) | |
a.deepStrictEqual(result, { | |
a: { | |
oneOne: '1', | |
twoTwo: '2' | |
}, | |
b: { | |
threeThree: true | |
}, | |
_all: { | |
oneOne: '1', | |
twoTwo: '2', | |
threeThree: true, | |
fourFour: '4' | |
}, | |
_none: { | |
fourFour: '4' | |
} | |
}) | |
}) | |
runner.test('camel-case: grouped with unknowns', function () { | |
const optionDefinitions = [ | |
{ name: 'one-one', group: 'a' }, | |
{ name: 'two-two', group: 'a' }, | |
{ name: 'three-three', group: 'b', type: Boolean }, | |
{ name: 'four-four' } | |
] | |
const argv = [ '--one-one', '1', '--two-two', '2', '--three-three', '--four-four', '4', '--five' ] | |
const result = commandLineArgs(optionDefinitions, { argv, camelCase: true, partial: true }) | |
a.deepStrictEqual(result, { | |
a: { | |
oneOne: '1', | |
twoTwo: '2' | |
}, | |
b: { | |
threeThree: true | |
}, | |
_all: { | |
oneOne: '1', | |
twoTwo: '2', | |
threeThree: true, | |
fourFour: '4' | |
}, | |
_none: { | |
fourFour: '4' | |
}, | |
_unknown: [ '--five' ] | |
}) | |
}) | |