Ejemplo n.º 1
0
 public function testGetRuleAndNode()
 {
     $rule = m::mock('\\Psecio\\Parse\\RuleInterface');
     $node = m::mock('\\PhpParser\\Node');
     $file = m::mock('\\Psecio\\Parse\\File');
     $event = new IssueEvent($rule, $node, $file);
     $this->assertSame($rule, $event->getRule());
     $this->assertSame($node, $event->getNode());
 }
Ejemplo n.º 2
0
 /**
  * Write issue to document
  *
  * @param  IssueEvent $event
  * @return void
  */
 public function onFileIssue(IssueEvent $event)
 {
     $this->xmlWriter->startElement('issue');
     $this->xmlWriter->writeElement('type', $event->getRule()->getName());
     $this->xmlWriter->writeElement('description', $event->getRule()->getDescription());
     $this->xmlWriter->writeElement('file', $event->getFile()->getPath());
     $this->xmlWriter->writeElement('line', $event->getNode()->getLine());
     $this->xmlWriter->startElement('source');
     $this->xmlWriter->writeCData(implode("\n", $event->getFile()->fetchNode($event->getNode())));
     $this->xmlWriter->endElement();
     $this->xmlWriter->endElement();
 }
Ejemplo n.º 3
0
 /**
  * Write issue as one line
  *
  * @param  IssueEvent $event
  * @return void
  */
 public function onFileIssue(IssueEvent $event)
 {
     $this->write("<error>[ISSUE] [%s] On line %d in %s</error>\n", $event->getRule()->getName(), $event->getNode()->getLine(), $event->getFile()->getPath());
 }