2011-11-20 21:21:09 +00:00
|
|
|
/*
|
|
|
|
* argv-test.js: Tests for the nconf argv store.
|
|
|
|
*
|
2014-11-26 06:31:48 +00:00
|
|
|
* (C) 2011, Charlie Robbins and the Contributors.
|
2011-11-20 21:21:09 +00:00
|
|
|
*
|
|
|
|
*/
|
|
|
|
|
|
|
|
var vows = require('vows'),
|
|
|
|
assert = require('assert'),
|
2017-10-28 17:49:46 +00:00
|
|
|
yargs = require('yargs')
|
2011-11-20 21:21:09 +00:00
|
|
|
nconf = require('../../lib/nconf');
|
|
|
|
|
|
|
|
vows.describe('nconf/stores/argv').addBatch({
|
2011-11-23 02:22:09 +00:00
|
|
|
"An instance of nconf.Argv": {
|
|
|
|
topic: new nconf.Argv(),
|
2011-11-20 21:21:09 +00:00
|
|
|
"should have the correct methods defined": function (argv) {
|
|
|
|
assert.isFunction(argv.loadSync);
|
|
|
|
assert.isFunction(argv.loadArgv);
|
2017-10-21 19:39:16 +00:00
|
|
|
assert.deepEqual(argv.options, {});
|
2017-10-28 17:49:46 +00:00
|
|
|
},
|
|
|
|
"can be created with a custom yargs":{
|
|
|
|
topic: function(){
|
|
|
|
var yargsInstance = yargs.alias('v', 'verbose').default('v', 'false');
|
|
|
|
return [yargsInstance, new nconf.Argv(yargsInstance)];
|
|
|
|
},
|
|
|
|
"and can give access to them": function (argv) {
|
|
|
|
var yargsInstance = argv[0];
|
|
|
|
argv = argv[1]
|
|
|
|
assert.equal(argv.options, yargsInstance)
|
|
|
|
},
|
|
|
|
"values are the one from the custom yargv": function (argv) {
|
|
|
|
argv = argv[1]
|
|
|
|
argv.loadSync()
|
|
|
|
assert.equal(argv.get('verbose'), 'false');
|
|
|
|
assert.equal(argv.get('v'), 'false');
|
|
|
|
}
|
2017-10-28 17:52:52 +00:00
|
|
|
},
|
|
|
|
"can be created with a nconf yargs":{
|
|
|
|
topic: function(){
|
|
|
|
var options = {verbose: {alias: 'v', default: 'false'}};
|
|
|
|
return new nconf.Argv(options);
|
|
|
|
},
|
|
|
|
"and can give access to them": function (argv) {
|
|
|
|
assert.deepEqual(argv.options, {verbose: {alias: 'v', default: 'false'}})
|
|
|
|
},
|
|
|
|
"values are the one from the custom yargv": function (argv) {
|
|
|
|
argv.loadSync()
|
|
|
|
assert.equal(argv.get('verbose'), 'false');
|
|
|
|
assert.equal(argv.get('v'), 'false');
|
|
|
|
}
|
2011-11-20 21:21:09 +00:00
|
|
|
}
|
|
|
|
}
|
|
|
|
}).export(module);
|