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