Example #1
0
 it("test a user-defined type by registering it", function () {
   function dateType(arg) {
     var x = new Date(arg);
     if (x.toString().match('Invalid')) {
       throw new TypeError("" + arg + " is not a valid date.");
     }
     return x;
   }
   parser = new ArgumentParser({debug: true});
   parser.register('type', 'dateType', dateType);
   parser.addArgument(['-d'], {type: 'dateType'});
   args = parser.parseArgs(['-d', '1/1/2012']);
   assert.deepEqual(args, {d: new Date('1/1/2012')});
   assert.throws(
   function () { parser.parseArgs(['-d', '13/1/2000']); },
     /Invalid dateType value: (.*)/i
   );
 });