Pyrech\ComposerChangelogs\OperationHandler\InstallHandler::getOutput PHP Метод

getOutput() публичный Метод

public getOutput ( Composer\DependencyResolver\Operation\OperationInterface $operation, Pyrech\ComposerChangelogs\UrlGenerator\UrlGenerator $urlGenerator = null )
$operation Composer\DependencyResolver\Operation\OperationInterface
$urlGenerator Pyrech\ComposerChangelogs\UrlGenerator\UrlGenerator
    public function getOutput(OperationInterface $operation, UrlGenerator $urlGenerator = null)
    {
        if (!$operation instanceof InstallOperation) {
            throw new \LogicException('Operation should be an instance of InstallOperation');
        }
        $output = [];
        $package = $operation->getPackage();
        $version = new Version($package->getVersion(), $package->getPrettyVersion(), method_exists($package, 'getFullPrettyVersion') ? $package->getFullPrettyVersion() : VersionParser::formatVersion($package));
        $output[] = sprintf(' - <fg=green>%s</fg=green> installed in version <fg=yellow>%s</fg=yellow>', $package->getName(), $version->getPretty());
        if ($urlGenerator) {
            $releaseUrl = $urlGenerator->generateReleaseUrl($this->extractSourceUrl($operation), $version);
            if (!empty($releaseUrl)) {
                $output[] = sprintf('   Release notes: %s', $releaseUrl);
            }
        }
        return $output;
    }

Usage Example

 /**
  * @expectedException \LogicException
  * @expectedExceptionMessage Operation should be an instance of InstallOperation
  */
 public function test_it_throws_exception_when_getting_output_from_non_install_operation()
 {
     $this->SUT->getOutput(new FakeOperation(''));
 }