Skip to content

Commit d1ca6ac

Browse files
bug #847 Skipping missing source directories during copy-from-package unconfiguration (tperunsky)
This PR was submitted for the 2.x branch but it was squashed and merged into the 1.x branch instead. Discussion ---------- Skipping missing source directories during copy-from-package unconfiguration #73 This PR makes the output look like this: ![image](https://user-images.githubusercontent.com/2622798/148063629-9f566dd7-f048-4c3e-9cce-e88f4655de74.png) Commits ------- 776319c Skipping missing source directories during copy-from-package unconfiguration
2 parents 266e8ea + 776319c commit d1ca6ac

File tree

2 files changed

+8
-1
lines changed

2 files changed

+8
-1
lines changed

src/Configurator/CopyFromPackageConfigurator.php

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -145,6 +145,9 @@ public function copyFile(string $source, string $target, array $options)
145145

146146
private function removeFilesFromDir(string $source, string $target)
147147
{
148+
if (!is_dir($source)) {
149+
return;
150+
}
148151
$iterator = $this->createSourceIterator($source, \RecursiveIteratorIterator::CHILD_FIRST);
149152
foreach ($iterator as $item) {
150153
$targetPath = $this->path->concatenate([$target, $iterator->getSubPathName()]);

tests/Configurator/CopyFromPackageConfiguratorTest.php

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -110,7 +110,11 @@ public function testUnconfigure()
110110
file_put_contents($this->targetFile, '');
111111
$this->assertFileExists($this->targetFile);
112112
$lock = $this->getMockBuilder(Lock::class)->disableOriginalConstructor()->getMock();
113-
$this->createConfigurator()->unconfigure($this->recipe, [$this->sourceFileRelativePath => $this->targetFileRelativePath], $lock);
113+
$this->createConfigurator()->unconfigure(
114+
$this->recipe,
115+
[$this->sourceFileRelativePath => $this->targetFileRelativePath, 'missingdir/' => ''],
116+
$lock
117+
);
114118
$this->assertFileDoesNotExist($this->targetFile);
115119
}
116120

0 commit comments

Comments
 (0)