Пример #1
0
 /**
  * @param array  $files
  * @param string $level
  * @param string $options
  * @param string $errorMessage
  *
  * @throws PhpCsFixerViolationsException
  */
 private function executeTool(array $files, $level, $options, $errorMessage)
 {
     $outputMessage = new PreCommitOutputWriter(sprintf('Checking %s code style with PHP-CS-FIXER', $level));
     $this->output->write($outputMessage->getMessage());
     $errors = [];
     foreach ($files as $file) {
         $errors[] = $this->phpCsFixerToolProcessor->process($file, $level, $options);
     }
     $errors = array_filter($errors);
     if (!empty($errors)) {
         $this->output->writeln($outputMessage->getFailMessage());
         $errorsText = $outputMessage->setError(implode('', $errors));
         $this->output->writeln($errorsText);
         $this->output->writeln(BadJobLogoResponse::paint($errorMessage));
         throw new PhpCsFixerViolationsException();
     }
     $this->output->writeln($outputMessage->getSuccessfulMessage());
 }