public function testDirectory() { $file = RESOURCE_DIR . '/'; $relative = str_replace(__DIR__, '', $file); $resource = new Resource($file, $relative); $this->assertEquals('', $resource->getExtension()); $this->assertEquals(rtrim($relative, '/'), $resource->getRelativePath()); $this->assertEquals(rtrim($relative, '/'), $resource->getRelativePath(true)); $this->assertFalse($resource->isIndexable()); $this->assertEquals(basename($file), $resource->getFilenameShort(true)); $this->assertEquals(basename($file), $resource->getFilenameShort(false)); $this->assertEmpty($resource->getContents()); }
/** * Returns the file namespace based their location or * front-matter * * @param object $resource * @param array $matter * @return string */ public function getNamespace(Resource $resource, array $matter = array()) { if (!empty($matter['namespace'])) { $ns = trim($matter['namespace']); } else { $ns = $resource->getRelativePath(true); } return '/' . str_replace(array(' ', '_'), '-', trim($ns, '/ ')); }
/** * Creates a link from the given resource * * @param object $resource * @return string */ public function fromResource(Resource $resource) { $file = $resource->getFilenameShort(false); $path = $resource->getRelativePath(true); return $this->urlizeRecursive($path . '/' . $file); }