summary refs log tree commit diff stats
path: root/tests/misc
diff options
context:
space:
mode:
Diffstat (limited to 'tests/misc')
-rw-r--r--tests/misc/tparseopt.nim77
1 files changed, 42 insertions, 35 deletions
diff --git a/tests/misc/tparseopt.nim b/tests/misc/tparseopt.nim
index badbc59ad..651689398 100644
--- a/tests/misc/tparseopt.nim
+++ b/tests/misc/tparseopt.nim
@@ -9,6 +9,8 @@ kind: cmdLongOption	key:val  --  left:
 kind: cmdLongOption	key:val  --  debug:3
 kind: cmdShortOption	key:val  --  l:4
 kind: cmdShortOption	key:val  --  r:2
+cmdLongOption foo
+cmdLongOption path
 parseoptNoVal
 kind: cmdLongOption	key:val  --  left:
 kind: cmdLongOption	key:val  --  debug:3
@@ -34,44 +36,49 @@ from parseopt2 import nil
 
 
 block:
-    echo "parseopt"
-    for kind, key, val in parseopt.getopt():
-      echo "kind: ", kind, "\tkey:val  --  ", key, ":", val
+  echo "parseopt"
+  for kind, key, val in parseopt.getopt():
+    echo "kind: ", kind, "\tkey:val  --  ", key, ":", val
 
-    # pass custom cmdline arguments
-    echo "first round"
-    var argv = "--left --debug:3 -l=4 -r:2"
-    var p = parseopt.initOptParser(argv)
-    for kind, key, val in parseopt.getopt(p):
-      echo "kind: ", kind, "\tkey:val  --  ", key, ":", val
-      break
-    # reset getopt iterator and check arguments are returned correctly.
-    echo "second round"
-    for kind, key, val in parseopt.getopt(p):
-      echo "kind: ", kind, "\tkey:val  --  ", key, ":", val
+  # pass custom cmdline arguments
+  echo "first round"
+  var argv = "--left --debug:3 -l=4 -r:2"
+  var p = parseopt.initOptParser(argv)
+  for kind, key, val in parseopt.getopt(p):
+    echo "kind: ", kind, "\tkey:val  --  ", key, ":", val
+    break
+  # reset getopt iterator and check arguments are returned correctly.
+  echo "second round"
+  for kind, key, val in parseopt.getopt(p):
+    echo "kind: ", kind, "\tkey:val  --  ", key, ":", val
+
+  # bug #9619
+  var x = parseopt.initOptParser(@["--foo:", "--path"], allowWhitespaceAfterColon = false)
+  for kind, key, val in parseopt.getopt(x):
+    echo kind, " ", key
 
 block:
-    echo "parseoptNoVal"
-    # test NoVal mode with custom cmdline arguments
-    var argv = "--left --debug:3 -l -r:2 --debug 2 --debug=1 -r1 -r=0 -lr4"
-    var p = parseopt.initOptParser(argv,
-                                   shortNoVal = {'l'}, longNoVal = @["left"])
-    for kind, key, val in parseopt.getopt(p):
-      echo "kind: ", kind, "\tkey:val  --  ", key, ":", val
+  echo "parseoptNoVal"
+  # test NoVal mode with custom cmdline arguments
+  var argv = "--left --debug:3 -l -r:2 --debug 2 --debug=1 -r1 -r=0 -lr4"
+  var p = parseopt.initOptParser(argv,
+                                  shortNoVal = {'l'}, longNoVal = @["left"])
+  for kind, key, val in parseopt.getopt(p):
+    echo "kind: ", kind, "\tkey:val  --  ", key, ":", val
 
 block:
-    echo "parseopt2"
-    for kind, key, val in parseopt2.getopt():
-      echo "kind: ", kind, "\tkey:val  --  ", key, ":", val
+  echo "parseopt2"
+  for kind, key, val in parseopt2.getopt():
+    echo "kind: ", kind, "\tkey:val  --  ", key, ":", val
 
-    # pass custom cmdline arguments
-    echo "first round"
-    var argv: seq[string] = @["--left", "--debug:3", "-l=4", "-r:2"]
-    var p = parseopt2.initOptParser(argv)
-    for kind, key, val in parseopt2.getopt(p):
-      echo "kind: ", kind, "\tkey:val  --  ", key, ":", val
-      break
-    # reset getopt iterator and check arguments are returned correctly.
-    echo "second round"
-    for kind, key, val in parseopt2.getopt(p):
-      echo "kind: ", kind, "\tkey:val  --  ", key, ":", val
+  # pass custom cmdline arguments
+  echo "first round"
+  var argv: seq[string] = @["--left", "--debug:3", "-l=4", "-r:2"]
+  var p = parseopt2.initOptParser(argv)
+  for kind, key, val in parseopt2.getopt(p):
+    echo "kind: ", kind, "\tkey:val  --  ", key, ":", val
+    break
+  # reset getopt iterator and check arguments are returned correctly.
+  echo "second round"
+  for kind, key, val in parseopt2.getopt(p):
+    echo "kind: ", kind, "\tkey:val  --  ", key, ":", val