UNPKG

3.9 kBJavaScriptView Raw
1"use strict";
2/**
3 * This file is part of the @egodigital/egoose distribution.
4 * Copyright (c) e.GO Digital GmbH, Aachen, Germany (https://www.e-go-digital.com/)
5 *
6 * @egodigital/egoose is free software: you can redistribute it and/or modify
7 * it under the terms of the GNU Lesser General Public License as
8 * published by the Free Software Foundation, version 3.
9 *
10 * @egodigital/egoose is distributed in the hope that it will be useful, but
11 * WITHOUT ANY WARRANTY; without even the implied warranty of
12 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
13 * Lesser General Public License for more details.
14 *
15 * You should have received a copy of the GNU Lesser General Public License
16 * along with this program. If not, see <http://www.gnu.org/licenses/>.
17 */
18Object.defineProperty(exports, "__esModule", { value: true });
19const assert = require("assert");
20const mocha_1 = require("mocha");
21const egoose = require("../index");
22mocha_1.describe('#parseCommandLine', function () {
23 mocha_1.describe('sync', function () {
24 mocha_1.it("should be return 'format' as command and 'C:' as argument", function () {
25 const ARGS = egoose.parseCommandLine('Format C:');
26 assert.ok('object' === typeof ARGS);
27 assert.ok('string' === typeof ARGS.command);
28 assert.equal(ARGS.command, 'format');
29 assert.strictEqual(ARGS.command, 'format');
30 assert.ok('object' === typeof ARGS.arguments);
31 assert.ok(Array.isArray(ARGS.arguments._));
32 assert.equal(ARGS.arguments._.length, 1);
33 assert.strictEqual(ARGS.arguments._.length, 1);
34 assert.ok('string' === typeof ARGS.arguments._[0]);
35 assert.equal(ARGS.arguments._[0], 'C:');
36 assert.strictEqual(ARGS.arguments._[0], 'C:');
37 });
38 mocha_1.it("should be return 'format' as command and no argument", function () {
39 const ARGS = egoose.parseCommandLine('Format');
40 assert.ok('object' === typeof ARGS);
41 assert.ok('string' === typeof ARGS.command);
42 assert.equal(ARGS.command, 'format');
43 assert.strictEqual(ARGS.command, 'format');
44 assert.ok('object' === typeof ARGS.arguments);
45 assert.ok(Array.isArray(ARGS.arguments._));
46 assert.equal(ARGS.arguments._.length, 0);
47 assert.strictEqual(ARGS.arguments._.length, 0);
48 });
49 mocha_1.it("should be return 'format' as command and 5 arguments", function () {
50 const ARGS = egoose.parseCommandLine('FOO "file.txt" --bar1=1 --bar2="1" --bar3=tm --bar4');
51 assert.ok('object' === typeof ARGS);
52 assert.ok('string' === typeof ARGS.command);
53 assert.equal(ARGS.command, 'foo');
54 assert.strictEqual(ARGS.command, 'foo');
55 assert.equal(ARGS.arguments._.length, 1);
56 assert.strictEqual(ARGS.arguments._.length, 1);
57 assert.ok('string' === typeof ARGS.arguments._[0]);
58 assert.equal(ARGS.arguments._[0], 'file.txt');
59 assert.strictEqual(ARGS.arguments._[0], 'file.txt');
60 assert.ok('number' === typeof ARGS.arguments.bar1);
61 assert.equal(ARGS.arguments.bar1, 1);
62 assert.strictEqual(ARGS.arguments.bar1, 1);
63 assert.ok('number' === typeof ARGS.arguments.bar2);
64 assert.equal(ARGS.arguments.bar2, 1);
65 assert.strictEqual(ARGS.arguments.bar2, 1);
66 assert.ok('string' === typeof ARGS.arguments.bar3);
67 assert.equal(ARGS.arguments.bar3, 'tm');
68 assert.strictEqual(ARGS.arguments.bar3, 'tm');
69 assert.ok('boolean' === typeof ARGS.arguments.bar4);
70 assert.equal(ARGS.arguments.bar4, true);
71 assert.strictEqual(ARGS.arguments.bar4, true);
72 });
73 });
74});
75//# sourceMappingURL=parseCommandLine.js.map
\No newline at end of file