directory = __DIR__ . DIRECTORY_SEPARATOR . 'filesystem'; @mkdir($this->directory . DIRECTORY_SEPARATOR . 'subdir', 0777, true); umask(0002); $this->filesystem = new Filesystem(new LocalAdapter($this->directory, true, 0770)); $this->registerLocalFilesystemInStream(); } /** * @test */ public function shouldChmodDirectory(): void { if (strtolower(substr(PHP_OS, 0, 3)) === 'win') { $this->markTestSkipped('Chmod and umask are not available on Windows.'); } $r = fopen('gaufrette://filestream/foo/bar', 'a+'); fclose($r); $perms = fileperms($this->directory . '/foo/'); $this->assertEquals('0770', substr(sprintf('%o', $perms), -4)); } protected function tearDown(): void { $adapter = $this->filesystem->getAdapter(); foreach ($this->filesystem->keys() as $key) { $adapter->delete($key); } $this->filesystem = null; rmdir($this->directory); } /** * @test */ public function shouldSupportsDirectory(): void { $this->assertFileExists('gaufrette://filestream/subdir'); $this->assertDirectoryExists('gaufrette://filestream/subdir'); } }