5 class CliCommandTest
extends \PHPUnit_Framework_TestCase
14 protected function setUp() {
16 ["h", "help", "Display help",
17 CliArgs
::OPTIONAL|CliArgs
::SINGLE|CliArgs
::NOARG|CliArgs
::HALT
],
18 ["v", "verbose", "More output",
19 CliArgs
::OPTIONAL|CliArgs
::SINGLE|CliArgs
::NOARG
],
20 ["q", "quiet", "Less output",
21 CliArgs
::OPTIONAL|CliArgs
::SINGLE|CliArgs
::NOARG
],
22 ["p", "prefix", "PHP installation prefix if phpize is not in \$PATH, e.g. /opt/php7",
23 CliArgs
::OPTIONAL|CliArgs
::SINGLE|CliArgs
::REQARG
],
24 ["n", "common-name", "PHP common program name, e.g. php5 or zts-php",
25 CliArgs
::OPTIONAL|CliArgs
::SINGLE|CliArgs
::REQARG
,
27 ["c", "configure", "Additional extension configure flags, e.g. -c --with-flag",
28 CliArgs
::OPTIONAL|CliArgs
::MULTI|CliArgs
::REQARG
],
29 ["s", "sudo", "Installation might need increased privileges",
30 CliArgs
::OPTIONAL|CliArgs
::SINGLE|CliArgs
::OPTARG
,
33 $this->args
= new CliArgs($this->spec
);
36 public function testHelp() {
37 $this->expectOutputString(<<<EOF
40 $ testprog [-hvqs] [-p|-n|-c <arg>]
42 -h|--help Display help
43 -v|--verbose More output
44 -q|--quiet Less output
45 -p|--prefix <arg> PHP installation prefix if phpize is not in \$PATH, e.g. /opt/php7
46 -n|--common-name <arg> PHP common program name, e.g. php5 or zts-php [php]
47 -c|--configure <arg> Additional extension configure flags, e.g. -c --with-flag
48 -s|--sudo [<arg>] Installation might need increased privileges [sudo -S %s]
53 $this->help("testprog");