public function testGetOrCreateIndexPage() { $directory = new Directory($this->getStaticRoot(), 'dir'); $directory->setTitle('Tutorials'); $entry = Builder::getOrCreatePage($directory, 'index.md'); $this->assertSame($directory, $entry->getParent()); $this->assertEquals('dir/index.html', $entry->getUrl()); $this->assertEquals('Tutorials', $entry->getTitle()); $this->assertInstanceOf('Todaymade\\Daux\\Tree\\Content', $entry); }
/** * @param Directory $parent * @param string $title * @return Directory */ public static function getOrCreateDir(Directory $parent, $title) { $slug = DauxHelper::slug($title); if (array_key_exists($slug, $parent->getEntries())) { return $parent->getEntries()[$slug]; } $dir = new Directory($parent, $slug); $dir->setTitle($title); return $dir; }