[hotfix] Ignore type checking for edge
[platform/framework/web/wrtjs.git] / device_home / node_modules / jake / test / unit / parseargs.js
1 const PROJECT_DIR=process.env.PROJECT_DIR;let res,parseargs=require(`${PROJECT_DIR}/lib/parseargs`),assert=require("assert"),optsReg=[{full:"directory",abbr:"C",preempts:!1,expectValue:!0},{full:"jakefile",abbr:"f",preempts:!1,expectValue:!0},{full:"tasks",abbr:"T",preempts:!0},{full:"tasks",abbr:"ls",preempts:!0},{full:"trace",abbr:"t",preempts:!1,expectValue:!1},{full:"help",abbr:"h",preempts:!0},{full:"version",abbr:"V",preempts:!0}],p=new parseargs.Parser(optsReg),z=function(e){return e.split(" ")};suite("parseargs",(function(){test("long preemptive opt and val with equal-sign, ignore further opts",(function(){res=p.parse(z("--tasks=foo --jakefile=asdf")),assert.equal("foo",res.opts.tasks),assert.equal(void 0,res.opts.jakefile)})),test("long preemptive opt and val without equal-sign, ignore further opts",(function(){res=p.parse(z("--tasks foo --jakefile=asdf")),assert.equal("foo",res.opts.tasks),assert.equal(void 0,res.opts.jakefile)})),test("long preemptive opt and no val, ignore further opts",(function(){res=p.parse(z("--tasks --jakefile=asdf")),assert.equal(!0,res.opts.tasks),assert.equal(void 0,res.opts.jakefile)})),test("preemptive opt with no val, should be true",(function(){res=p.parse(z("-T")),assert.equal(!0,res.opts.tasks)})),test("preemptive opt with no val, should be true and ignore further opts",(function(){res=p.parse(z("-T -f")),assert.equal(!0,res.opts.tasks),assert.equal(void 0,res.opts.jakefile)})),test("preemptive opt with val, should be val",(function(){res=p.parse(z("-T zoobie -f foo/bar/baz")),assert.equal("zoobie",res.opts.tasks),assert.equal(void 0,res.opts.jakefile)})),test("-f expects a value, -t does not (howdy is task-name)",(function(){res=p.parse(z("-f zoobie -t howdy")),assert.equal("zoobie",res.opts.jakefile),assert.equal(!0,res.opts.trace),assert.equal("howdy",res.taskNames[0])})),test("different order, -f expects a value, -t does not (howdy is task-name)",(function(){res=p.parse(z("-f zoobie howdy -t")),assert.equal("zoobie",res.opts.jakefile),assert.equal(!0,res.opts.trace),assert.equal("howdy",res.taskNames[0])})),test("-f expects a value, -t does not (foo=bar is env var)",(function(){res=p.parse(z("-f zoobie -t foo=bar")),assert.equal("zoobie",res.opts.jakefile),assert.equal(!0,res.opts.trace),assert.equal("bar",res.envVars.foo),assert.equal(void 0,res.taskNames[0])})),test("-f expects a value, -t does not (foo=bar is env-var, task-name follows)",(function(){res=p.parse(z("-f zoobie -t howdy foo=bar")),assert.equal("zoobie",res.opts.jakefile),assert.equal(!0,res.opts.trace),assert.equal("bar",res.envVars.foo),assert.equal("howdy",res.taskNames[0])})),test("-t does not expect a value, -f does (howdy is task-name)",(function(){res=p.parse(z("-t howdy -f zoobie")),assert.equal(!0,res.opts.trace),assert.equal("zoobie",res.opts.jakefile),assert.equal("howdy",res.taskNames[0])})),test("--trace does not expect a value, -f does (howdy is task-name)",(function(){res=p.parse(z("--trace howdy --jakefile zoobie")),assert.equal(!0,res.opts.trace),assert.equal("zoobie",res.opts.jakefile),assert.equal("howdy",res.taskNames[0])})),test("--trace does not expect a value (equal), -f does (throw howdy away)",(function(){res=p.parse(z("--trace=howdy --jakefile=zoobie")),assert.equal(!0,res.opts.trace),assert.equal("zoobie",res.opts.jakefile),assert.equal(void 0,res.taskNames[0])}))}));