summaryrefslogtreecommitdiff
path: root/flags/tests/all_bool.ts
diff options
context:
space:
mode:
Diffstat (limited to 'flags/tests/all_bool.ts')
-rwxr-xr-xflags/tests/all_bool.ts32
1 files changed, 32 insertions, 0 deletions
diff --git a/flags/tests/all_bool.ts b/flags/tests/all_bool.ts
new file mode 100755
index 000000000..de696dda6
--- /dev/null
+++ b/flags/tests/all_bool.ts
@@ -0,0 +1,32 @@
+import { test, assertEqual } from "https://deno.land/x/testing/testing.ts";
+import parseArgs from "../index.ts";
+
+// flag boolean true (default all --args to boolean)
+test(function flagBooleanTrue() {
+ const argv = parseArgs(['moo', '--honk', 'cow'], {
+ boolean: true
+ });
+
+ assertEqual(argv, {
+ honk: true,
+ _: ['moo', 'cow']
+ });
+
+ assertEqual(typeof argv.honk, 'boolean');
+});
+
+// flag boolean true only affects double hyphen arguments without equals signs
+test(function flagBooleanTrueOnlyAffectsDoubleDash() {
+ var argv = parseArgs(['moo', '--honk', 'cow', '-p', '55', '--tacos=good'], {
+ boolean: true
+ });
+
+ assertEqual(argv, {
+ honk: true,
+ tacos: 'good',
+ p: 55,
+ _: ['moo', 'cow']
+ });
+
+ assertEqual(typeof argv.honk, 'boolean');
+});