diff options
Diffstat (limited to 'node_modules/nomnom/test/values.js')
-rw-r--r-- | node_modules/nomnom/test/values.js | 75 |
1 files changed, 75 insertions, 0 deletions
diff --git a/node_modules/nomnom/test/values.js b/node_modules/nomnom/test/values.js new file mode 100644 index 000000000..797807e5e --- /dev/null +++ b/node_modules/nomnom/test/values.js @@ -0,0 +1,75 @@ +var nomnom = require("../nomnom"); + +var opts = { + debug: { + flag: true + }, + verbose: { + flag: true, + default: true + }, + list1: { + list: true + }, + list2: { + list: true + }, + list3: { + position: 1, + list: true + }, + num1: { + type: "string" + }, + def1: { + default: "val1" + }, + def2: { + default: "val1" + } +} + +var parser = nomnom().options(opts); + +exports.testFlag = function(test) { + var options = parser.parse(["--debug", "pos0", "--no-verbose"]); + + test.strictEqual(options.debug, true); + test.strictEqual(options.verbose, false); + test.equal(options[0], "pos0"); + test.equal(options._[0], "pos0"); + test.done(); +} + +exports.testList = function(test) { + var options = parser.parse(["pos0", "pos1", "--list1=val0", "--list2", "val1", + "--list2", "val2", "pos2"]); + + test.deepEqual(options.list1, ["val0"]); + test.deepEqual(options.list2, ["val1", "val2"]); + test.deepEqual(options.list3, ["pos1", "pos2"]); + test.done(); +} + +exports.testDefault = function(test) { + var options = parser.parse(["--def2", "val2", "--def3", "val3"]); + + test.strictEqual(options.def1, "val1"); + test.strictEqual(options.def2, "val2"); + test.strictEqual(options.def3, "val3"); + test.done(); +} + +exports.testTypes = function(test) { + var options = parser.parseArgs(["", "-x", "3.14", "-w", "true", "-q", "120", + "--num1", "4"]); + + test.strictEqual(options[0], ""); + test.strictEqual(options.x, 3.14); + test.strictEqual(options.w, true); + test.strictEqual(options.q, 120); + test.strictEqual(options.num1, "4"); + test.done(); +} + + |