Zsh Mailing List Archive
Messages sorted by: Reverse Date, Date, Thread, Author

PATCH: 55arguments.ztst



I refined _arguments test stuff and separated into 55arguments.ztst.
It may be moved before zsh-4.0, though.

Index: Test/53completion.ztst
===================================================================
RCS file: /cvsroot/zsh/zsh/Test/53completion.ztst,v
retrieving revision 1.6
diff -u -u -r1.6 53completion.ztst
--- Test/53completion.ztst	2000/06/01 15:15:29	1.6
+++ Test/53completion.ztst	2000/07/17 10:16:53
@@ -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 }{}
-
Index: Test/55arguments.ztst
===================================================================
RCS file: 55arguments.ztst
diff -N 55arguments.ztst
--- /dev/null	Tue May  5 13:32:27 1998
+++ 55arguments.ztst	Mon Jul 17 03:16:53 2000
@@ -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}
+
-- 
Tanaka Akira



Messages sorted by: Reverse Date, Date, Thread, Author