Ejemplo n.º 1
0
 /**
  * @param \Symfony\Component\Console\Output\OutputInterface $output
  * @param \PHPSemVerChecker\Report\Report                   $report
  * @param string                                            $context
  */
 protected function outputTable(OutputInterface $output, Report $report, $context)
 {
     $table = new Table($output);
     $table->setHeaders(['Level', 'Location', 'Target', 'Reason', 'Code']);
     foreach (Level::asList('desc') as $level) {
         $reportForLevel = $report[$context][$level];
         /** @var \PHPSemVerChecker\Operation\Operation $operation */
         foreach ($reportForLevel as $operation) {
             $table->addRow([Level::toString($level), $this->getLocation($operation), $operation->getTarget(), $operation->getReason(), $operation->getCode()]);
         }
     }
     $table->render();
 }
Ejemplo n.º 2
0
 public function getOutput()
 {
     $output = [];
     $output['level'] = Level::toString($this->report->getSuggestedLevel());
     $output['changes'] = [];
     $contexts = ['class', 'function', 'interface', 'trait'];
     $differences = $this->report->getDifferences();
     foreach ($contexts as $context) {
         foreach (Level::asList('desc') as $level) {
             $reportForLevel = $differences[$context][$level];
             /** @var \PHPSemVerChecker\Operation\Operation $operation */
             foreach ($reportForLevel as $operation) {
                 $output['changes'][$context][] = ['level' => Level::toString($level), 'location' => $operation->getLocation(), 'line' => $operation->getLine(), 'target' => $operation->getTarget(), 'reason' => $operation->getReason(), 'code' => $operation->getCode()];
             }
         }
     }
     return $output;
 }
Ejemplo n.º 3
0
 /**
  * @return int
  */
 public function getSuggestedLevel()
 {
     foreach (Level::asList('desc') as $level) {
         foreach ($this->differences as $context => $levels) {
             if (!empty($levels[$level])) {
                 return $level;
             }
         }
     }
     return Level::NONE;
 }