summaryrefslogtreecommitdiff
path: root/flags/tests/num.ts
blob: 85efa76a6b55734c9a0bfe74f28d1e28b78c5574 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
import { test, assertEqual } from "https://deno.land/x/testing/testing.ts";
import parseArgs from "../index.ts";

test(function nums() {
    const argv = parseArgs([
        '-x', '1234',
        '-y', '5.67',
        '-z', '1e7',
        '-w', '10f',
        '--hex', '0xdeadbeef',
        '789'
    ]);
    assertEqual(argv, {
        x : 1234,
        y : 5.67,
        z : 1e7,
        w : '10f',
        hex : 0xdeadbeef,
        _ : [ 789 ]
    });
    assertEqual(typeof argv.x, 'number');
    assertEqual(typeof argv.y, 'number');
    assertEqual(typeof argv.z, 'number');
    assertEqual(typeof argv.w, 'string');
    assertEqual(typeof argv.hex, 'number');
    assertEqual(typeof argv._[0], 'number');
});

test(function alreadyNumber() {
    const argv = parseArgs([ '-x', 1234, 789 ]);
    assertEqual(argv, { x : 1234, _ : [ 789 ] });
    assertEqual(typeof argv.x, 'number');
    assertEqual(typeof argv._[0], 'number');
});