123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475 |
- 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();
- }
|