// Copyright 2018-2019 the Deno authors. All rights reserved. MIT license. import { test } from "../testing/mod.ts"; import { assertEquals } from "../testing/asserts.ts"; import { parse } from "./mod.ts"; test(function nums(): void { const argv = parse([ "-x", "1234", "-y", "5.67", "-z", "1e7", "-w", "10f", "--hex", "0xdeadbeef", "789" ]); assertEquals(argv, { x: 1234, y: 5.67, z: 1e7, w: "10f", hex: 0xdeadbeef, _: [789] }); assertEquals(typeof argv.x, "number"); assertEquals(typeof argv.y, "number"); assertEquals(typeof argv.z, "number"); assertEquals(typeof argv.w, "string"); assertEquals(typeof argv.hex, "number"); assertEquals(typeof argv._[0], "number"); }); test(function alreadyNumber(): void { const argv = parse(["-x", 1234, 789]); assertEquals(argv, { x: 1234, _: [789] }); assertEquals(typeof argv.x, "number"); assertEquals(typeof argv._[0], "number"); });