mirror of
git://git.code.sf.net/p/zsh/code
synced 2025-01-19 11:31:26 +01:00
* 12274: Test/53completion.ztst, Test/55arguments.ztst,
Test/.distfiles: separates _arguments tests.
This commit is contained in:
parent
5c412f8905
commit
cd96c63fe7
4 changed files with 150 additions and 98 deletions
|
@ -1,3 +1,8 @@
|
|||
2000-07-08 Tanaka Akira <akr@zsh.org>
|
||||
|
||||
* 12274: Test/53completion.ztst, Test/55arguments.ztst,
|
||||
Test/.distfiles: separates _arguments tests.
|
||||
|
||||
2000-07-17 Peter Stephenson <pws@cambridgesiliconradio.com>
|
||||
|
||||
* Config/version.mk: 3.1.9-dev-3.
|
||||
|
|
|
@ -6,5 +6,5 @@ DISTFILES_SRC='
|
|||
10prompt.ztst 11glob.ztst 12procsubst.ztst 13parameter.ztst
|
||||
14array.ztst
|
||||
50cd.ztst 51xtrace.ztst 52zregexparse.ztst
|
||||
53completion.ztst 54compmatch.ztst
|
||||
53completion.ztst 54compmatch.ztst 55arguments.ztst
|
||||
'
|
||||
|
|
|
@ -49,100 +49,3 @@
|
|||
>DI:{dir2}
|
||||
>FI:{file1}
|
||||
>FI:{file2}
|
||||
|
||||
comptesteval 'compdef _tst tst; _tst () { _arguments ":desc1:(arg1)" }'
|
||||
comptest $'tst \t'
|
||||
0:_arguments
|
||||
>line: {tst arg1 }{}
|
||||
|
||||
comptest $'tst a\t'
|
||||
0:_arguments
|
||||
>line: {tst arg1 }{}
|
||||
|
||||
comptest $'tst ar\t'
|
||||
0:_arguments
|
||||
>line: {tst arg1 }{}
|
||||
|
||||
comptest $'tst arg\t'
|
||||
0:_arguments
|
||||
>line: {tst arg1 }{}
|
||||
|
||||
comptest $'tst arg1\t'
|
||||
0:_arguments
|
||||
>line: {tst arg1 }{}
|
||||
|
||||
comptest $'tst r\t'
|
||||
0:_arguments
|
||||
>line: {tst r}{}
|
||||
|
||||
comptest $'tst x\t'
|
||||
0:_arguments
|
||||
>line: {tst x}{}
|
||||
|
||||
comptest $'tst a \t'
|
||||
0:_arguments
|
||||
>line: {tst a }{}
|
||||
>MESSAGE:{no more arguments}
|
||||
|
||||
comptest $'tst a b \t'
|
||||
0:_arguments
|
||||
>line: {tst a b }{}
|
||||
>MESSAGE:{no more arguments}
|
||||
|
||||
comptesteval 'compdef _tst tst; _tst () { _arguments ":desc1:(a b)" }'
|
||||
comptest $'tst \t'
|
||||
0:_arguments
|
||||
>line: {tst }{}
|
||||
>DESCRIPTION:{desc1}
|
||||
>NO:{a}
|
||||
>NO:{b}
|
||||
|
||||
comptesteval 'compdef _tst tst; _tst () { _arguments ":desc1:(arg1)" ":desc2:(arg2)" ":desc3:(arg3)" }'
|
||||
comptest $'tst \t'
|
||||
0:_arguments
|
||||
>line: {tst arg1 }{}
|
||||
|
||||
comptest $'tst arg1 \t'
|
||||
0:_arguments
|
||||
>line: {tst arg1 arg2 }{}
|
||||
|
||||
comptest $'tst arg1 arg2 \t'
|
||||
0:_arguments
|
||||
>line: {tst arg1 arg2 arg3 }{}
|
||||
|
||||
comptest $'tst \C-D'
|
||||
0:_arguments
|
||||
>DESCRIPTION:{desc1}
|
||||
>NO:{arg1}
|
||||
|
||||
comptesteval 'compdef _tst tst; _tst () { _arguments "-\+[opt]" }'
|
||||
comptest $'tst -\C-D'
|
||||
0:_arguments
|
||||
>DESCRIPTION:{option}
|
||||
>NO:{-+ -- opt}
|
||||
|
||||
comptesteval 'compdef _tst tst; _tst () { _arguments "1:desc1:(arg1)" }'
|
||||
comptest $'tst \t'
|
||||
0:_arguments
|
||||
>line: {tst arg1 }{}
|
||||
|
||||
comptesteval 'compdef _tst tst; _tst () { _arguments "-x" ":arg:" }'
|
||||
comptest $'tst -\t'
|
||||
0:_arguments
|
||||
>line: {tst -}{}
|
||||
>MESSAGE:{arg}
|
||||
|
||||
comptesteval 'compdef _tst tst; _tst () { _arguments "-x:arg:" }'
|
||||
comptest $'tst -x\t'
|
||||
0:_arguments
|
||||
>line: {tst -x }{}
|
||||
|
||||
comptesteval '
|
||||
compdef _tst tst
|
||||
_tst () { _arguments "-a" "*::rest:_tst2" }
|
||||
_tst2 () { compadd - -b }
|
||||
'
|
||||
comptest $'tst arg -\t'
|
||||
0:_arguments
|
||||
>line: {tst arg -b }{}
|
||||
|
||||
|
|
144
Test/55arguments.ztst
Normal file
144
Test/55arguments.ztst
Normal file
|
@ -0,0 +1,144 @@
|
|||
# Tests for _arguments.
|
||||
|
||||
%prep
|
||||
. $ZTST_srcdir/comptest
|
||||
|
||||
mkdir comp.tmp
|
||||
cd comp.tmp
|
||||
|
||||
comptestinit -z $ZTST_testdir/../Src/zsh
|
||||
comptesteval 'compdef _tst tst'
|
||||
tst_arguments () { comptesteval "_tst () { _arguments ${${(@qq)*}} }" }
|
||||
|
||||
%test
|
||||
tst_arguments ':desc1:(arg1)'
|
||||
comptest $'tst \t\C-wa\t\C-war\t\C-warg\t\C-warg1\t\C-wr\t\C-wx\t \ty \t'
|
||||
0:one non-option argument
|
||||
>line: {tst arg1 }{}
|
||||
>line: {tst arg1 }{}
|
||||
>line: {tst arg1 }{}
|
||||
>line: {tst arg1 }{}
|
||||
>line: {tst arg1 }{}
|
||||
>line: {tst r}{}
|
||||
>line: {tst x}{}
|
||||
>line: {tst x }{}
|
||||
>MESSAGE:{no more arguments}
|
||||
>line: {tst x y }{}
|
||||
>MESSAGE:{no more arguments}
|
||||
|
||||
tst_arguments ':desc1:(a b)'
|
||||
comptest $'tst \t'
|
||||
0:a and b
|
||||
>line: {tst }{}
|
||||
>DESCRIPTION:{desc1}
|
||||
>NO:{a}
|
||||
>NO:{b}
|
||||
|
||||
tst_arguments ':desc1:(arg1)' ':desc2:(arg2)' ':desc3:(arg3)'
|
||||
comptest $'tst \t\t\t\C-w\C-w\C-w\C-d'
|
||||
0:three arguments
|
||||
>line: {tst arg1 }{}
|
||||
>line: {tst arg1 arg2 }{}
|
||||
>line: {tst arg1 arg2 arg3 }{}
|
||||
>DESCRIPTION:{desc1}
|
||||
>NO:{arg1}
|
||||
|
||||
tst_arguments '1:desc1:(arg1)'
|
||||
comptest $'tst \t\t'
|
||||
0:first argument
|
||||
>line: {tst arg1 }{}
|
||||
>line: {tst arg1 }{}
|
||||
>MESSAGE:{no more arguments}
|
||||
|
||||
tst_arguments '-\+[opt]'
|
||||
comptest $'tst -\C-d'
|
||||
0:-+
|
||||
>DESCRIPTION:{option}
|
||||
>NO:{-+ -- opt}
|
||||
|
||||
tst_arguments -+o
|
||||
comptest $'tst -\t\t\t\C-w\C-w+\t\t\t'
|
||||
0:option beginning with + and -.
|
||||
>line: {tst -o }{}
|
||||
>line: {tst -o +o }{}
|
||||
>line: {tst -o +o }{}
|
||||
>MESSAGE:{no arguments}
|
||||
>line: {tst +o }{}
|
||||
>line: {tst +o -o }{}
|
||||
>line: {tst +o -o }{}
|
||||
>MESSAGE:{no arguments}
|
||||
|
||||
tst_arguments '-o:1:(a):2:(b)'
|
||||
comptest $'tst \t\t\t'
|
||||
0:two option arguments
|
||||
>line: {tst -o }{}
|
||||
>line: {tst -o a }{}
|
||||
>line: {tst -o a b }{}
|
||||
|
||||
tst_arguments '-x:arg:'
|
||||
comptest $'tst -x\t'
|
||||
0:sticky option argument
|
||||
>line: {tst -x }{}
|
||||
|
||||
tst_arguments '-x[desc]'
|
||||
comptest $'tst -x\t'
|
||||
0:end of option sequence
|
||||
>line: {tst -x }{}
|
||||
|
||||
tst_arguments '-x' ':arg:'
|
||||
comptest $'tst -\t'
|
||||
0:argument beginning with minus
|
||||
>line: {tst -}{}
|
||||
>MESSAGE:{arg}
|
||||
|
||||
tst_arguments '-o::optarg:(oa)' ':arg1:(a1)'
|
||||
comptest $'tst -o\t\t'
|
||||
0:optional option argument
|
||||
>line: {tst -o }{}
|
||||
>line: {tst -o }{}
|
||||
>DESCRIPTION:{optarg}
|
||||
>NO:{oa}
|
||||
>DESCRIPTION:{arg1}
|
||||
>NO:{a1}
|
||||
|
||||
tst_arguments '-o:*a:a:(a)' ':A:(A)' ':B:(B)'
|
||||
comptest $'tst A -o a \t'
|
||||
0:variable length option arguments
|
||||
>line: {tst A -o a B }{}
|
||||
|
||||
tst_arguments -s '-a' '-b' ':descr:{compadd - $+opt_args[-a]}'
|
||||
comptest $'tst -ab \t'
|
||||
0:opt_args
|
||||
>line: {tst -ab 1 }{}
|
||||
|
||||
tst_arguments '-a' '*::rest:{compadd - -b}'
|
||||
comptest $'tst arg -\t'
|
||||
0:rest arguments
|
||||
>line: {tst arg -b }{}
|
||||
|
||||
tst_arguments '-e:*last:::b:{compadd "${(j:,:)words}"}' ':arg1:(arg1)'
|
||||
comptest $'tst -\t\tla\t\C-hst\t\t\eb\eb\C-b\t\t'
|
||||
0:words array in rest arguments
|
||||
>line: {tst -e }{}
|
||||
>line: {tst -e }{}
|
||||
>line: {tst -e la }{}
|
||||
>line: {tst -e last }{}
|
||||
>line: {tst -e last arg1 }{}
|
||||
>line: {tst -e ,last }{ last arg1}
|
||||
>line: {tst -e ,last ,last,,last }{ last arg1}
|
||||
|
||||
tst_arguments -s '-d+:msg1:' '*::msg2:{compadd $CURRENT}'
|
||||
comptest $'tst add \t\t\t'
|
||||
0:opt_args
|
||||
>line: {tst add 2 }{}
|
||||
>line: {tst add 2 3 }{}
|
||||
>line: {tst add 2 3 4 }{}
|
||||
|
||||
tst_arguments -s '-a' '-b' '-c' ':words:compadd - abyyy abzzz'
|
||||
comptest $'tst ab\t'
|
||||
0:options and words (zsh-workers:12257)
|
||||
>line: {tst ab}{}
|
||||
>DESCRIPTION:{words}
|
||||
>NO:{abyyy}
|
||||
>NO:{abzzz}
|
||||
|
Loading…
Reference in a new issue