/** * @dataProvider isRelativeLinkProvider */ public function testIsRelativeLink($link, $expectedIsRelative) { $this->assertEquals($expectedIsRelative, SpeedOut_Utils::isRelativeLink($link)); }
protected function replaceRelationalLinksInLinkData(&$linkedFileData, $linkPath) { $internalLinksReplaces = array(); $linksBaseDir = dirname($linkPath); if (SpeedOut_Utils::safePregMatchAll('~[\'"\\(]\\s*([\\:\\w-_\\./\\\\]+?\\.[\\w]{3,4})\\s*[\'"\\)]~', $linkedFileData, $m)) { foreach ($m[1] as $internalLink) { if (SpeedOut_Utils::isRelativeLink($internalLink)) { $internalLinkPath = SpeedOut_Utils::getLinkPath($internalLink, $linksBaseDir); $internalLinkUri = SpeedOut_Utils::getPathUri($internalLinkPath); if ($this->isValidInternalLink($internalLinkPath, $linkPath)) { $internalLinksReplaces[$internalLink] = $internalLinkUri; } } } } foreach ($this->getInternalLinksPaths($linkedFileData) as $internalLink => $internalLinkPath) { if (SpeedOut_Utils::isRelativeLink($internalLink)) { } } if ($internalLinksReplaces) { $linkedFileData = str_replace(array_keys($internalLinksReplaces), $internalLinksReplaces, $linkedFileData); } }