radarrplexorganizrnginxsonarrdashboardsabnzbdheimdallembycouchpotatonzbgetbookmarkapplication-dashboardmuximuxlandingpagestartpagelandinghtpcserverhomepage
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
103 lines
2.4 KiB
103 lines
2.4 KiB
<?php
|
|
|
|
/*
|
|
* This file is part of the Symfony package.
|
|
*
|
|
* (c) Fabien Potencier <fabien@symfony.com>
|
|
*
|
|
* For the full copyright and license information, please view the LICENSE
|
|
* file that was distributed with this source code.
|
|
*/
|
|
|
|
namespace Symfony\Component\Console\Tester;
|
|
|
|
use Symfony\Component\Console\Input\InputInterface;
|
|
use Symfony\Component\Console\Output\OutputInterface;
|
|
use Symfony\Component\Console\Output\StreamOutput;
|
|
|
|
/**
|
|
* @author Amrouche Hamza <hamza.simperfit@gmail.com>
|
|
*
|
|
* @internal
|
|
*/
|
|
trait TesterTrait
|
|
{
|
|
/** @var StreamOutput */
|
|
private $output;
|
|
private $inputs = array();
|
|
|
|
/**
|
|
* Gets the display returned by the last execution of the command or application.
|
|
*
|
|
* @param bool $normalize Whether to normalize end of lines to \n or not
|
|
*
|
|
* @return string The display
|
|
*/
|
|
public function getDisplay($normalize = false)
|
|
{
|
|
rewind($this->output->getStream());
|
|
|
|
$display = stream_get_contents($this->output->getStream());
|
|
|
|
if ($normalize) {
|
|
$display = str_replace(PHP_EOL, "\n", $display);
|
|
}
|
|
|
|
return $display;
|
|
}
|
|
|
|
/**
|
|
* Gets the input instance used by the last execution of the command or application.
|
|
*
|
|
* @return InputInterface The current input instance
|
|
*/
|
|
public function getInput()
|
|
{
|
|
return $this->input;
|
|
}
|
|
|
|
/**
|
|
* Gets the output instance used by the last execution of the command or application.
|
|
*
|
|
* @return OutputInterface The current output instance
|
|
*/
|
|
public function getOutput()
|
|
{
|
|
return $this->output;
|
|
}
|
|
|
|
/**
|
|
* Gets the status code returned by the last execution of the command or application.
|
|
*
|
|
* @return int The status code
|
|
*/
|
|
public function getStatusCode()
|
|
{
|
|
return $this->statusCode;
|
|
}
|
|
|
|
/**
|
|
* Sets the user inputs.
|
|
*
|
|
* @param $inputs array An array of strings representing each input
|
|
* passed to the command input stream
|
|
*
|
|
* @return self
|
|
*/
|
|
public function setInputs(array $inputs)
|
|
{
|
|
$this->inputs = $inputs;
|
|
|
|
return $this;
|
|
}
|
|
|
|
private static function createStream(array $inputs)
|
|
{
|
|
$stream = fopen('php://memory', 'r+', false);
|
|
|
|
fwrite($stream, implode(PHP_EOL, $inputs));
|
|
rewind($stream);
|
|
|
|
return $stream;
|
|
}
|
|
}
|
|
|