private function doResolveRedirectTarget(Title $title) { $this->addToResolverTracker($title); if ($this->isCircularByKnownRedirectTarget($title)) { throw new RuntimeException("Circular redirect for {$title->getPrefixedDBkey()} detected."); } if ($this->isRedirect($title)) { $title = $this->pageCreator->createPage($title)->getRedirectTarget(); if ($title instanceof Title) { $title = $this->doResolveRedirectTarget($title); } } if ($this->isValidRedirectTarget($title)) { return $title; } throw new RuntimeException("Redirect target is unresolvable"); }
public function testCreatePage() { $instance = new PageCreator(); $this->assertInstanceOf('\\WikiPage', $instance->createPage(MockTitle::buildMock(__METHOD__))); }