summaryrefslogtreecommitdiff
path: root/std/flags/all_bool_test.ts
diff options
context:
space:
mode:
Diffstat (limited to 'std/flags/all_bool_test.ts')
-rwxr-xr-xstd/flags/all_bool_test.ts34
1 files changed, 34 insertions, 0 deletions
diff --git a/std/flags/all_bool_test.ts b/std/flags/all_bool_test.ts
new file mode 100755
index 000000000..711bf3da1
--- /dev/null
+++ b/std/flags/all_bool_test.ts
@@ -0,0 +1,34 @@
+// 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";
+
+// flag boolean true (default all --args to boolean)
+test(function flagBooleanTrue(): void {
+ const argv = parse(["moo", "--honk", "cow"], {
+ boolean: true
+ });
+
+ assertEquals(argv, {
+ honk: true,
+ _: ["moo", "cow"]
+ });
+
+ assertEquals(typeof argv.honk, "boolean");
+});
+
+// flag boolean true only affects double hyphen arguments without equals signs
+test(function flagBooleanTrueOnlyAffectsDoubleDash(): void {
+ const argv = parse(["moo", "--honk", "cow", "-p", "55", "--tacos=good"], {
+ boolean: true
+ });
+
+ assertEquals(argv, {
+ honk: true,
+ tacos: "good",
+ p: 55,
+ _: ["moo", "cow"]
+ });
+
+ assertEquals(typeof argv.honk, "boolean");
+});