123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104 |
- <?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;
- }
- }
|