Skip to content

Commit

Permalink
is it correct to assume directory_visibility has precedence over visi…
Browse files Browse the repository at this point in the history
…bility when creating a directory
  • Loading branch information
theodson committed Aug 13, 2024
1 parent db42c7e commit 4524149
Show file tree
Hide file tree
Showing 2 changed files with 6 additions and 3 deletions.
2 changes: 1 addition & 1 deletion src/Local/LocalFilesystemAdapter.php
Original file line number Diff line number Diff line change
Expand Up @@ -352,7 +352,7 @@ public function createDirectory(string $path, Config $config): void
{
$this->ensureRootDirectoryExists();
$location = $this->prefixer->prefixPath($path);
$visibility = $config->get(Config::OPTION_VISIBILITY, $config->get(Config::OPTION_DIRECTORY_VISIBILITY));
$visibility = $config->get(Config::OPTION_DIRECTORY_VISIBILITY, $config->get(Config::OPTION_VISIBILITY));

This comment has been minimized.

Copy link
@theodson

theodson Aug 13, 2024

Author

See question regarding "does directory_visibility have precedence over visibility when creating a directory" #1809

$permissions = $this->resolveDirectoryVisibility($visibility);

if (is_dir($location)) {
Expand Down
7 changes: 5 additions & 2 deletions src/Local/LocalFilesystemAdapterTest.php
Original file line number Diff line number Diff line change
Expand Up @@ -501,9 +501,10 @@ public function creating_a_directory(): void
$this->assertDirectoryExists(static::ROOT . '/public_dir_public_files');
$this->assertFileHasPermissions(static::ROOT . '/public_dir_public_files', 0755);

# when creating a directory is it correct to assume directory_visibility has precedence over visibility ?
$adapter->createDirectory('public_dir_private_files', new Config(['visibility' => 'private', 'directory_visibility' => 'public']));
$this->assertDirectoryExists(static::ROOT . '/public_dir_private_files');
$this->assertFileHasPermissions(static::ROOT . '/public_dir_private_files', 0700); # should this not be 0755 for directory_visibility=public
$this->assertFileHasPermissions(static::ROOT . '/public_dir_private_files', 0755); # should this not be 0755 instead of 0700
}


Expand Down Expand Up @@ -550,7 +551,9 @@ public function creating_a_directory_write_a_file(): void

$adapter->createDirectory('public_dir_private_files', $config = new Config(['visibility' => 'private', 'directory_visibility' => 'public']));
$this->assertDirectoryExists(static::ROOT . '/public_dir_private_files');
$this->assertFileHasPermissions(static::ROOT . '/public_dir_private_files', 0700); # should this not be 0755 for directory_visibility=public

# when creating a directory is it correct to assume directory_visibility has precedence over visibility ?
$this->assertFileHasPermissions(static::ROOT . '/public_dir_private_files', 0755);
$adapter->write('/public_dir_private_files/file.txt', 'contents', $config);
$this->assertFileContains(static::ROOT . '/public_dir_private_files/file.txt', 'contents');
$this->assertFileHasPermissions(static::ROOT . '/public_dir_private_files/file.txt', 0600);
Expand Down

0 comments on commit 4524149

Please sign in to comment.