mirror of
https://github.com/composer/composer
synced 2025-05-10 17:12:51 +00:00
Remove usage of echo when executing Composer script
This commit is contained in:
parent
0ffa1db489
commit
103624d4ed
3 changed files with 27 additions and 4 deletions
|
@ -340,7 +340,7 @@ class EventDispatcherTest extends TestCase
|
|||
->setConstructorArgs(array(
|
||||
$this->createComposerInstance(),
|
||||
$io = $this->getMock('Composer\IO\IOInterface'),
|
||||
new ProcessExecutor,
|
||||
new ProcessExecutor($io),
|
||||
))
|
||||
->setMethods(array('getListeners'))
|
||||
->getMock();
|
||||
|
@ -354,9 +354,11 @@ class EventDispatcherTest extends TestCase
|
|||
->method('writeError')
|
||||
->with($this->equalTo('> echo foo'));
|
||||
|
||||
ob_start();
|
||||
$io->expects($this->once())
|
||||
->method('write')
|
||||
->with($this->equalTo('foo'.PHP_EOL));
|
||||
|
||||
$dispatcher->dispatchScript(ScriptEvents::POST_INSTALL_CMD, false);
|
||||
$this->assertEquals('foo', trim(ob_get_clean()));
|
||||
}
|
||||
|
||||
public function testDispatcherOutputsErrorOnFailedCommand()
|
||||
|
|
|
@ -35,6 +35,17 @@ class ProcessExecutorTest extends TestCase
|
|||
$this->assertEquals("foo".PHP_EOL, $output);
|
||||
}
|
||||
|
||||
public function testUseIOIsNotNullAndIfNotCaptured()
|
||||
{
|
||||
$io = $this->getMock('Composer\IO\IOInterface');
|
||||
$io->expects($this->once())
|
||||
->method('write')
|
||||
->with($this->equalTo('foo'.PHP_EOL));
|
||||
|
||||
$process = new ProcessExecutor($io);
|
||||
$process->execute('echo foo');
|
||||
}
|
||||
|
||||
public function testExecuteCapturesStderr()
|
||||
{
|
||||
$process = new ProcessExecutor;
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue