Using Minimist
by Bret Lowrey
HTML
<script src="https://wzrd.in/standalone/minimist@latest"></script>
<script src="https://wzrd.in/standalone/expect@latest"></script>
<body>
Running Tests
</body>
JavaScript
const argTest = () => {
expect(minimist(['-a', 'arg1'])).toEqual({
_: [],
a: 'arg1'
});
expect(minimist(['-a'])).toEqual({
_: [],
a: true
});
expect(minimist(['-a', 'arg1', '-b'])).toEqual({
_: [],
a: 'arg1',
b: true
});
};
const nonmatchingTest = () => {
expect(minimist(['arg1', 'arg2', 'arg3'])).toEqual({
_: ['arg1', 'arg2', 'arg3']
});
};
const aliasTest = () => {
expect(minimist(['--output', 'arg1'],
{alias: {o: 'output'}})).toEqual({
_: [],
o: 'arg1',
output: 'arg1'
});
};
const defaultTest = () => {
expect(minimist([], {default: {a: 'arg1'}})).toEqual({
_: [],
a: 'arg1'
});
};
[argTest, nonmatchingTest, defaultTest, aliasTest].forEach(test => test());
document.body.innerHTML = 'All tests passed';