function ProcessOutputCallbackTest::testErrorOutputOnly
Tests what happens when there is error output only.
File
-
core/
modules/ package_manager/ tests/ src/ Unit/ ProcessOutputCallbackTest.php, line 33
Class
- ProcessOutputCallbackTest
- @covers \Drupal\package_manager\ProcessOutputCallback @group package_manager
Namespace
Drupal\Tests\package_manager\UnitCode
public function testErrorOutputOnly() : void {
$callback = new ProcessOutputCallback();
$logger = new TestLogger();
$callback->setLogger($logger);
$error_text = 'What happened?';
$callback(OutputTypeEnum::ERR, $error_text);
$this->assertSame([
$error_text,
], $callback->getErrorOutput());
// The error should not yet be logged.
$this->assertEmpty($logger->records);
// There should be no output data, but calling getOutput() should log the
// error.
$this->assertSame([], $callback->getOutput());
$this->assertNull($callback->parseJsonOutput());
$this->assertTrue($logger->hasWarning($error_text));
// Resetting the callback should clear the error buffer but the log should
// still have the error from before.
$callback->reset();
$this->assertTrue($logger->hasWarning($error_text));
}
Buggy or inaccurate documentation? Please file an issue. Need support? Need help programming? Connect with the Drupal community.