Mercurial > hg > rc1
diff vendor/pear/console_getopt/tests/001-getopt.phpt @ 0:1e000243b222
vanilla 1.3.3 distro, I hope
author | Charlie Root |
---|---|
date | Thu, 04 Jan 2018 15:50:29 -0500 |
parents | |
children |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/vendor/pear/console_getopt/tests/001-getopt.phpt Thu Jan 04 15:50:29 2018 -0500 @@ -0,0 +1,63 @@ +--TEST-- +Console_Getopt +--FILE-- +<?php +require_once 'Console/Getopt.php'; +PEAR::setErrorHandling(PEAR_ERROR_PRINT, "%s\n\n"); + +function test($argstr, $optstr) { + $argv = preg_split('/[[:space:]]+/', $argstr); + if (PEAR::isError($options = Console_Getopt::getopt($argv, $optstr))) { + return; + } + $opts = $options[0]; + $non_opts = $options[1]; + $i = 0; + print "options: "; + foreach ($opts as $o => $d) { + if ($i++ > 0) { + print ", "; + } + print $d[0] . '=' . $d[1]; + } + print "\n"; + print "params: " . implode(", ", $non_opts) . "\n"; + print "\n"; +} + +test("-abc", "abc"); +test("-abc foo", "abc"); +test("-abc foo", "abc:"); +test("-abc foo bar gazonk", "abc"); +test("-abc foo bar gazonk", "abc:"); +test("-a -b -c", "abc"); +test("-a -b -c", "abc:"); +test("-abc", "ab:c"); +test("-abc foo -bar gazonk", "abc"); +?> +--EXPECT-- +options: a=, b=, c= +params: + +options: a=, b=, c= +params: foo + +options: a=, b=, c=foo +params: + +options: a=, b=, c= +params: foo, bar, gazonk + +options: a=, b=, c=foo +params: bar, gazonk + +options: a=, b=, c= +params: + +Console_Getopt: option requires an argument --c + +options: a=, b=c +params: + +options: a=, b=, c= +params: foo, -bar, gazonk