X-Git-Url: https://git.m6w6.name/?p=m6w6%2Fext-psi;a=blobdiff_plain;f=tests%2Fgetopt%2Fgetopt001.phpt;h=71af2c7fdbe178bd1bfe4977271c8f0aaa3536c8;hp=2209d09c86d98d441c16ac29054fee3c92809d93;hb=9bcb1df0786a8193d65949c857baaba2f4296e84;hpb=5e240548ba570610ce0dbc248a2b7654a0e080fa diff --git a/tests/getopt/getopt001.phpt b/tests/getopt/getopt001.phpt index 2209d09..71af2c7 100644 --- a/tests/getopt/getopt001.phpt +++ b/tests/getopt/getopt001.phpt @@ -3,9 +3,10 @@ getopt --INI-- psi.directory={PWD}:{PWD}/../../psi.d --SKIPIF-- - --ENV-- POSIXLY_CORRECT= @@ -19,29 +20,31 @@ $args = [ $opts = "v::x:s:"; -psi\opterr(0); +for ($i = 0; $i<3; ++$i) { + psi\opterr(0); + psi\optind\set(1); -while (($opt = chr(psi\getopt($args, $opts)))) { - switch ($opt) { - case "v": - printf("got v\n"); - break; - case "x": - case "s": - printf("got %s: %s\n", $opt, psi\optarg()); - break; - default: - printf("error '%s'\n", $opt); - case chr(-1): - break 2; + while (($opt = chr(psi\getopt($args, $opts)))) { + switch ($opt) { + case "v": + printf("got v\n"); + break; + case "x": + case "s": + printf("got %s: %s\n", $opt, psi\optarg()); + break; + default: + printf("error '%s'\n", $opt); + case chr(-1): + break 2; + } } -} -$pos = psi\optind(); -while ($pos < count($args)) { - printf("arg: %s\n", $args[$pos++]); + $pos = psi\optind\get(); + while ($pos < count($args)) { + printf("arg: %s\n", $args[$pos++]); + } } - var_dump($args); ?> @@ -55,6 +58,20 @@ arg: huh arg: -gotcha arg: --bar arg: baz +got v +got x: 1 +got s: foo +arg: huh +arg: -gotcha +arg: --bar +arg: baz +got v +got x: 1 +got s: foo +arg: huh +arg: -gotcha +arg: --bar +arg: baz array(11) { [0]=> string(8) "progname"