/** * @param Item $item * * @return Item */ protected function fixPaths(Item $item) { $url = new Url($item->getSource()); $item->setIntro($this->getFixedText($item->getIntro(), $url->getFullHost())); $item->setContent($this->getFixedText($item->getContent(), $url->getFullHost())); return $item; }
public function testItem() { $item = new Item(); $date = new DateTime(); $item->setId('id'); $item->setName('name'); $item->setIntro('intro'); $item->setContent('content'); $item->setSource('source'); $item->setAuthor('author'); $item->setImage('image'); $item->setDate($date); $item->setExtra('key', 'value'); $item->setTags(array('tag')); $this->assertEquals('id', $item->getId()); $this->assertEquals('name', $item->getName()); $this->assertEquals('intro', $item->getIntro()); $this->assertEquals('content', $item->getContent()); $this->assertEquals('source', $item->getSource()); $this->assertEquals('author', $item->getAuthor()); $this->assertEquals('image', $item->getImage()); $this->assertEquals($date, $item->getDate()); $this->assertEquals('value', $item->getExtra('key')); $this->assertEquals(null, $item->getExtra('key-no-exist')); $this->assertEquals(array('tag'), $item->getTags()); }
/** * @param Item $item * * @return bool|string */ protected function setImageFromContent(Item $item) { $images = $this->getImages($item->getContent()); foreach ($images as $image) { if ($this->isOnIgnoredPatterns($image)) { continue; } $item->setImage($image); return; } }
/** * @param Item $item * * @return bool|string */ protected function setImagesFromContent(Item $item) { $allImages = $this->getImages($item->getContent()); $images = array(); foreach ($allImages as $image) { if ($this->isOnIgnoredPatterns($image)) { continue; } $images[$image] = $image; } $item->setExtra('images', array_values($images)); }
/** * @param Item $item * * @return Item */ public function removeStyle(Item $item) { $item->setIntro(preg_replace('/(<[^>]+) style=".*?"/i', '$1', $item->getIntro())); $item->setContent(preg_replace('/(<[^>]+) style=".*?"/i', '$1', $item->getContent())); return $item; }
/** * @param Item $item * * @return Item */ protected function doClean(Item $item) { $item->setIntro(strip_tags($item->getIntro(), $this->allowedTags['intro'])); $item->setContent(strip_tags($item->getContent(), $this->allowedTags['content'])); return $item; }
/** * @dataProvider dataProvider */ public function testContent(Item $item, $content, $fileName) { $expected = $this->getFirstValueFromXpath($content, "*/item[1]/description"); $this->assertEquals($expected, $item->getContent(), 'Fail asserting that first element of ' . $fileName . ' has content "' . $expected . '"'); }
/** * @param Item $item * * @return string */ protected function doClean(Item $item) { $item->setIntro($this->purifier->purify($item->getIntro())); $item->setContent($this->purifier->purify($item->getContent())); return $item; }