/** * @test * @covers Plum\Plum\Result::addException() * @covers Plum\Plum\Result::getExceptions() * @covers Plum\Plum\Result::getErrorCount() */ public function addExceptionShouldAddException() { $exception = new Exception(); $this->assertInstanceOf('Plum\\Plum\\Result', $this->result->addException($exception)); $this->assertContains($exception, $this->result->getExceptions()); $this->assertEquals(1, $this->result->getErrorCount()); }
/** * @param Result $result */ public function outputExceptions(Result $result) { foreach ($result->getExceptions() as $exception) { $this->outputExceptionMessage($exception)->outputExceptionTrace($exception); } return $this; }
/** * @param mixed $item * @param Result $result */ protected function processItem($item, Result $result) { $written = false; foreach ($this->pipeline as $element) { if ($element instanceof FilterPipe && $element->getField()) { if ($element->getFilter()->filter(Vale::get($item, $element->getField())) === false) { return; } } elseif ($element instanceof FilterPipe) { if ($element->getFilter()->filter($item) === false) { return; } } elseif ($element instanceof ConverterPipe && $element->getField()) { $item = $this->convertItemValue($item, $element); } elseif ($element instanceof ConverterPipe) { $item = $this->convertItem($item, $element); if ($item === null) { return; } } elseif ($element instanceof WriterPipe) { if ($this->writeItem($item, $element) === true) { $result->incWriteCount(); $written = true; } } } if ($written === true) { $result->incItemWriteCount(); } }