/** * Tests Fs_Node->create(), creating dir */ public function testCreate_Recursive() { $target = "{$this->file}.y/" . basename($this->file) . ".orig"; umask(022); $new = Fs::symlink($target, "{$this->file}.x", 0, 'dir'); $this->assertType('Q\\Fs_Symlink_Dir', $new); $new->create(0770, Fs::RECURSIVE); $this->assertTrue(is_dir("{$this->file}.y/" . basename($this->file) . ".orig")); $this->assertEquals('0750', sprintf('%04o', fileperms($target) & 0777)); $this->assertEquals('0750', sprintf('%04o', fileperms("{$this->file}.y") & 0777)); }
/** * Tests Fs::symlink(), creating a broken link */ public function testSymlink_Broken() { $this->tmpfiles[] = $link = sys_get_temp_dir() . '/q-fs_test.' . md5(uniqid()); $file = Fs::symlink('/does/not/exist/' . basename($link), $link); $this->assertType('Q\\Fs_Symlink_Broken', $file); $this->assertEquals($link, (string) $file); $this->assertEquals('/does/not/exist/' . basename($link), (string) $file->target()); }