Exemplo n.º 1
0
$input = new TestInput('-azc');
$t->is($input->getTokens(), array('-azc'), '->tokenize() parses aggregated short options');
$input = new TestInput('-awithavalue');
$t->is($input->getTokens(), array('-awithavalue'), '->tokenize() parses short options with a value');
$input = new TestInput('-a"foo bar"');
$t->is($input->getTokens(), array('-afoo bar'), '->tokenize() parses short options with a value');
$input = new TestInput('-a"foo bar""foo bar"');
$t->is($input->getTokens(), array('-afoo barfoo bar'), '->tokenize() parses short options with a value');
$input = new TestInput('-a\'foo bar\'');
$t->is($input->getTokens(), array('-afoo bar'), '->tokenize() parses short options with a value');
$input = new TestInput('-a\'foo bar\'\'foo bar\'');
$t->is($input->getTokens(), array('-afoo barfoo bar'), '->tokenize() parses short options with a value');
$input = new TestInput('-a\'foo bar\'"foo bar"');
$t->is($input->getTokens(), array('-afoo barfoo bar'), '->tokenize() parses short options with a value');
$input = new TestInput('--long-option');
$t->is($input->getTokens(), array('--long-option'), '->tokenize() parses long options');
$input = new TestInput('--long-option=foo');
$t->is($input->getTokens(), array('--long-option=foo'), '->tokenize() parses long options with a value');
$input = new TestInput('--long-option="foo bar"');
$t->is($input->getTokens(), array('--long-option=foo bar'), '->tokenize() parses long options with a value');
$input = new TestInput('--long-option="foo bar""another"');
$t->is($input->getTokens(), array('--long-option=foo baranother'), '->tokenize() parses long options with a value');
$input = new TestInput('--long-option=\'foo bar\'');
$t->is($input->getTokens(), array('--long-option=foo bar'), '->tokenize() parses long options with a value');
$input = new TestInput("--long-option='foo bar''another'");
$t->is($input->getTokens(), array("--long-option=foo baranother"), '->tokenize() parses long options with a value');
$input = new TestInput("--long-option='foo bar'\"another\"");
$t->is($input->getTokens(), array("--long-option=foo baranother"), '->tokenize() parses long options with a value');
$input = new TestInput('foo -a -ffoo --long bar');
$t->is($input->getTokens(), array('foo', '-a', '-ffoo', '--long', 'bar'), '->tokenize() parses when several arguments and options');
Exemplo n.º 2
0
use Symfony\Components\CLI\Input\Definition;
use Symfony\Components\CLI\Input\Argument;
use Symfony\Components\CLI\Input\Option;
class TestInput extends ArgvInput
{
    public function getTokens()
    {
        return $this->tokens;
    }
}
$t = new LimeTest(26);
// __construct()
$t->diag('__construct()');
$_SERVER['argv'] = array('cli.php', 'foo');
$input = new TestInput();
$t->is($input->getTokens(), array('foo'), '__construct() automatically get its input from the argv server variable');
// ->parse()
$t->diag('->parse()');
$input = new TestInput(array('cli.php', 'foo'));
$input->bind(new Definition(array(new Argument('name'))));
$t->is($input->getArguments(), array('name' => 'foo'), '->parse() parses required arguments');
$input->bind(new Definition(array(new Argument('name'))));
$t->is($input->getArguments(), array('name' => 'foo'), '->parse() is stateless');
$input = new TestInput(array('cli.php', '--foo'));
$input->bind(new Definition(array(new Option('foo'))));
$t->is($input->getOptions(), array('foo' => true), '->parse() parses long options without parameter');
$input = new TestInput(array('cli.php', '--foo=bar'));
$input->bind(new Definition(array(new Option('foo', 'f', Option::PARAMETER_REQUIRED))));
$t->is($input->getOptions(), array('foo' => 'bar'), '->parse() parses long options with a required parameter (with a = separator)');
$input = new TestInput(array('cli.php', '--foo', 'bar'));
$input->bind(new Definition(array(new Option('foo', 'f', Option::PARAMETER_REQUIRED))));