protected function matchesCriteria(ScribbleFile $scribble, Criteria $criteria) { if (!$scribble) { return false; } if ($criteria->getSlug() !== null) { if ($scribble->getSlug() !== $criteria->getSlug()) { return false; } } // unpublished scribbles only if ($criteria->getMode() === Criteria::MODE_UNPUBLISHED) { if ($scribble->isPublished()) { return false; } } else { if ($criteria->getMode() === Criteria::MODE_ALL) { } else { if (!$scribble->isPublished()) { return false; } } } foreach ($criteria->getTags() as $key => $tag) { if (!$scribble->getTags()->containsKey($key)) { return false; } } if ($criteria->getFind() && !$scribble->find($criteria->getFind())) { return false; } return true; }
public function testLoadWithSnippet() { $file = SCRIBBLE_TESTS_DATA_BASE_DIR_WITH_SUBDIRS . '/markdown-scribble/scribble.md'; $scribble = new ScribbleFile(); $scribble->addInputFilter('snippet', new SnippetFilter()); $scribble->load($file); $this->assertRegExp('/IComeFromSnippetLand/', $scribble->getContent()); }
public function setUp() { $this->scribbles = new ScribbleCollection(); // load html scribble $file = SCRIBBLE_TESTS_DATA_BASE_DIR_WITH_SUBDIRS . '/html-scribble/scribble.html'; $slug = basename(dirname($file)); $scribble = new ScribbleFile(); $this->scribbles->set($slug, $scribble->load($file)->setSlug($slug)); // load markdown scribble $file = SCRIBBLE_TESTS_DATA_BASE_DIR_WITH_SUBDIRS . '/markdown-scribble/scribble.md'; $slug = basename(dirname($file)); $scribble = new ScribbleFile(); $this->scribbles->set($slug, $scribble->load($file)->setSlug($slug)); // load textile scribble $file = SCRIBBLE_TESTS_DATA_BASE_DIR_WITH_SUBDIRS . '/textile-scribble/scribble.textile'; $slug = basename(dirname($file)); $scribble = new ScribbleFile(); $this->scribbles->set($slug, $scribble->load($file)->setSlug($slug)); // load plain text scribble $file = SCRIBBLE_TESTS_DATA_BASE_DIR_WITH_SUBDIRS . '/plain-text-scribble/scribble.txt'; $slug = basename(dirname($file)); $scribble = new ScribbleFile(); $this->scribbles->set($slug, $scribble->load($file)->setSlug($slug)); }
/** * @expectedException Sirprize\Scribble\File\FileException */ public function testInvalidContentException() { $scribble = new ScribbleFile(); $scribble->load(SCRIBBLE_TESTS_DATA_INVALID_SCRIBBLE . '/scribble.md'); }