Merge branch '3.3' into 3.4
* 3.3: fixed CS Remove unused constant fix merge [Form] Add notice to upgrade to PHP v7.0.8+ Fix passing options with defaultCommand
This commit is contained in:
commit
45a3ab9ed4
@ -12,7 +12,6 @@
|
||||
namespace Symfony\Bridge\ProxyManager\Tests\LazyProxy\Dumper;
|
||||
|
||||
use PHPUnit\Framework\TestCase;
|
||||
use ProxyManager\ProxyGenerator\LazyLoading\MethodGenerator\StaticProxyConstructor;
|
||||
use Symfony\Bridge\ProxyManager\LazyProxy\PhpDumper\ProxyDumper;
|
||||
use Symfony\Component\DependencyInjection\ContainerBuilder;
|
||||
use Symfony\Component\DependencyInjection\Dumper\PhpDumper;
|
||||
|
@ -202,7 +202,12 @@ class Application
|
||||
|
||||
if (!$name) {
|
||||
$name = $this->defaultCommand;
|
||||
$input = new ArrayInput(array('command' => $this->defaultCommand));
|
||||
$this->definition->setArguments(array_merge(
|
||||
$this->definition->getArguments(),
|
||||
array(
|
||||
'command' => new InputArgument('command', InputArgument::OPTIONAL, $this->definition->getArgument('command')->getDescription(), $name),
|
||||
)
|
||||
));
|
||||
}
|
||||
|
||||
try {
|
||||
|
@ -45,6 +45,7 @@ class ApplicationTest extends TestCase
|
||||
{
|
||||
self::$fixturesPath = realpath(__DIR__.'/Fixtures/');
|
||||
require_once self::$fixturesPath.'/FooCommand.php';
|
||||
require_once self::$fixturesPath.'/FooOptCommand.php';
|
||||
require_once self::$fixturesPath.'/Foo1Command.php';
|
||||
require_once self::$fixturesPath.'/Foo2Command.php';
|
||||
require_once self::$fixturesPath.'/Foo3Command.php';
|
||||
@ -1376,16 +1377,31 @@ class ApplicationTest extends TestCase
|
||||
$application->setDefaultCommand($command->getName());
|
||||
|
||||
$tester = new ApplicationTester($application);
|
||||
$tester->run(array());
|
||||
$this->assertEquals('interact called'.PHP_EOL.'called'.PHP_EOL, $tester->getDisplay(), 'Application runs the default set command if different from \'list\' command');
|
||||
$tester->run(array(), array('interactive' => false));
|
||||
$this->assertEquals('called'.PHP_EOL, $tester->getDisplay(), 'Application runs the default set command if different from \'list\' command');
|
||||
|
||||
$application = new CustomDefaultCommandApplication();
|
||||
$application->setAutoExit(false);
|
||||
|
||||
$tester = new ApplicationTester($application);
|
||||
$tester->run(array());
|
||||
$tester->run(array(), array('interactive' => false));
|
||||
|
||||
$this->assertEquals('interact called'.PHP_EOL.'called'.PHP_EOL, $tester->getDisplay(), 'Application runs the default set command if different from \'list\' command');
|
||||
$this->assertEquals('called'.PHP_EOL, $tester->getDisplay(), 'Application runs the default set command if different from \'list\' command');
|
||||
}
|
||||
|
||||
public function testSetRunCustomDefaultCommandWithOption()
|
||||
{
|
||||
$command = new \FooOptCommand();
|
||||
|
||||
$application = new Application();
|
||||
$application->setAutoExit(false);
|
||||
$application->add($command);
|
||||
$application->setDefaultCommand($command->getName());
|
||||
|
||||
$tester = new ApplicationTester($application);
|
||||
$tester->run(array('--fooopt' => 'opt'), array('interactive' => false));
|
||||
|
||||
$this->assertEquals('called'.PHP_EOL.'opt'.PHP_EOL, $tester->getDisplay(), 'Application runs the default set command if different from \'list\' command');
|
||||
}
|
||||
|
||||
public function testSetRunCustomSingleCommand()
|
||||
|
@ -0,0 +1,36 @@
|
||||
<?php
|
||||
|
||||
use Symfony\Component\Console\Command\Command;
|
||||
use Symfony\Component\Console\Input\InputInterface;
|
||||
use Symfony\Component\Console\Input\InputOption;
|
||||
use Symfony\Component\Console\Output\OutputInterface;
|
||||
|
||||
class FooOptCommand extends Command
|
||||
{
|
||||
public $input;
|
||||
public $output;
|
||||
|
||||
protected function configure()
|
||||
{
|
||||
$this
|
||||
->setName('foo:bar')
|
||||
->setDescription('The foo:bar command')
|
||||
->setAliases(array('afoobar'))
|
||||
->addOption('fooopt', 'fo', InputOption::VALUE_OPTIONAL, 'fooopt description')
|
||||
;
|
||||
}
|
||||
|
||||
protected function interact(InputInterface $input, OutputInterface $output)
|
||||
{
|
||||
$output->writeln('interact called');
|
||||
}
|
||||
|
||||
protected function execute(InputInterface $input, OutputInterface $output)
|
||||
{
|
||||
$this->input = $input;
|
||||
$this->output = $output;
|
||||
|
||||
$output->writeln('called');
|
||||
$output->writeln($this->input->getOption('fooopt'));
|
||||
}
|
||||
}
|
@ -85,6 +85,9 @@ class FormDataCollector extends DataCollector implements FormDataCollectorInterf
|
||||
*/
|
||||
public function collect(Request $request, Response $response, \Exception $exception = null)
|
||||
{
|
||||
if (70000 <= \PHP_VERSION_ID && \PHP_VERSION_ID < 70800) {
|
||||
@trigger_error('A bug in PHP 7.0.0 to 7.0.7 is breaking the Form panel, please upgrade to 7.0.8 or higher.', E_USER_DEPRECATED);
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
|
@ -20,7 +20,6 @@ use Symfony\Component\Security\Core\Encoder\BCryptPasswordEncoder;
|
||||
class BCryptPasswordEncoderTest extends TestCase
|
||||
{
|
||||
const PASSWORD = 'password';
|
||||
const BYTES = '0123456789abcdef';
|
||||
const VALID_COST = '04';
|
||||
|
||||
/**
|
||||
|
Reference in New Issue
Block a user