commit
2697673666
|
@ -96,13 +96,11 @@ class ConsoleIO extends BaseIO
|
||||||
public function write($messages, $newline = true)
|
public function write($messages, $newline = true)
|
||||||
{
|
{
|
||||||
if (null !== $this->startTime) {
|
if (null !== $this->startTime) {
|
||||||
$messages = (array) $messages;
|
$memoryUsage = memory_get_usage() / 1024 / 1024;
|
||||||
$messages[0] = sprintf(
|
$timeSpent = microtime(true) - $this->startTime;
|
||||||
'[%.1fMB/%.2fs] %s',
|
$messages = array_map(function ($message) use ($memoryUsage, $timeSpent) {
|
||||||
memory_get_usage() / 1024 / 1024,
|
return sprintf('[%.1fMB/%.2fs] %s', $memoryUsage, $timeSpent, $message);
|
||||||
microtime(true) - $this->startTime,
|
}, (array) $messages);
|
||||||
$messages[0]
|
|
||||||
);
|
|
||||||
}
|
}
|
||||||
$this->output->write($messages, $newline);
|
$this->output->write($messages, $newline);
|
||||||
$this->lastMessage = join($newline ? "\n" : '', (array) $messages);
|
$this->lastMessage = join($newline ? "\n" : '', (array) $messages);
|
||||||
|
|
|
@ -49,6 +49,30 @@ class ConsoleIOTest extends TestCase
|
||||||
$consoleIO->write('some information about something', false);
|
$consoleIO->write('some information about something', false);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public function testWriteWithMultipleLineStringWhenDebugging()
|
||||||
|
{
|
||||||
|
$inputMock = $this->getMock('Symfony\Component\Console\Input\InputInterface');
|
||||||
|
$outputMock = $this->getMock('Symfony\Component\Console\Output\OutputInterface');
|
||||||
|
$outputMock->expects($this->once())
|
||||||
|
->method('write')
|
||||||
|
->with(
|
||||||
|
$this->callback(function($messages){
|
||||||
|
$result = preg_match("[(.*)/(.*) First line]", $messages[0]) > 0;
|
||||||
|
$result &= preg_match("[(.*)/(.*) Second line]", $messages[1]) > 0;
|
||||||
|
return $result;
|
||||||
|
}),
|
||||||
|
$this->equalTo(false)
|
||||||
|
);
|
||||||
|
$helperMock = $this->getMock('Symfony\Component\Console\Helper\HelperSet');
|
||||||
|
|
||||||
|
$consoleIO = new ConsoleIO($inputMock, $outputMock, $helperMock);
|
||||||
|
$startTime = microtime(true);
|
||||||
|
$consoleIO->enableDebugging($startTime);
|
||||||
|
|
||||||
|
$example = explode('\n', 'First line\nSecond lines');
|
||||||
|
$consoleIO->write($example, false);
|
||||||
|
}
|
||||||
|
|
||||||
public function testOverwrite()
|
public function testOverwrite()
|
||||||
{
|
{
|
||||||
$inputMock = $this->getMock('Symfony\Component\Console\Input\InputInterface');
|
$inputMock = $this->getMock('Symfony\Component\Console\Input\InputInterface');
|
||||||
|
|
Loading…
Reference in New Issue