properly deprecate parseopt2 (#10452)

This commit is contained in:
Miran
2019-01-25 13:13:55 +01:00
committed by Andreas Rumpf
parent 87fce94d65
commit 268197add8
4 changed files with 6 additions and 32 deletions

View File

@@ -3,7 +3,7 @@ discard """
# bug #5404
import parseopt2
import parseopt
{.emit: """typedef struct {
int key;
@@ -12,5 +12,5 @@ import parseopt2
type foo* {.importc: "foo", nodecl.} = object
key* {.importc: "key".}: cint
for kind, key, value in parseopt2.getopt():
for kind, key, value in parseopt.getopt():
discard

View File

@@ -21,14 +21,7 @@ kind: cmdShortOption key:val -- r:1
kind: cmdShortOption key:val -- r:0
kind: cmdShortOption key:val -- l:
kind: cmdShortOption key:val -- r:4
parseopt2
first round
kind: cmdLongOption key:val -- left:
second round
kind: cmdLongOption key:val -- left:
kind: cmdLongOption key:val -- debug:3
kind: cmdShortOption key:val -- l:4
kind: cmdShortOption key:val -- r:2'''
'''
joinable: false
"""
@@ -42,7 +35,6 @@ when defined(testament_tparseopt):
main()
else:
from parseopt import nil
from parseopt2 import nil
block:
echo "parseopt"
@@ -76,28 +68,11 @@ else:
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
# 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
import osproc, os, strutils
from stdtest/specialpaths import buildDir
import "../.." / compiler/unittest_light
block: # fix #9951 (and make it work for parseopt and parseopt2)
block: # fix #9951
template runTest(parseoptCustom) =
var p = parseoptCustom.initOptParser(@["echo \"quoted\""])
let expected = when defined(windows):
@@ -117,7 +92,6 @@ else:
doAssert "a5'b" == "a5\'b"
assertEquals parseoptCustom.cmdLineRest(p2), expected2
runTest(parseopt)
runTest(parseopt2)
block: # fix #9842
let exe = buildDir / "D20190112T145450".addFileExt(ExeExt)

View File

@@ -5,7 +5,7 @@ joinable: false
# not joinable because it executes itself with parameters
import os
import osproc
import parseopt2
import parseopt
import sequtils
let argv = commandLineParams()
@@ -17,6 +17,6 @@ else:
let f = toSeq(getopt())
doAssert f[0].kind == cmdArgument and f[0].key == "foo bar" and f[0].val == ""
doAssert f[1].kind == cmdLongOption and f[1].key == "aa" and f[1].val == "bar=a"
doAssert f[2].kind == cmdLongOption and f[2].key == "a=c" and f[2].val == "d"
doAssert f[2].kind == cmdLongOption and f[2].key == "a" and f[2].val == "c:d"
doAssert f[3].kind == cmdLongOption and f[3].key == "ab" and f[3].val == ""
doAssert f[4].kind == cmdShortOption and f[4].key == "c" and f[4].val == ""