Skip to content

Commit 28d99f6

Browse files
Merge pull request #1500 from laurentmuller/master
Updated the PropertyMapping to accept array for the getUploadDir() function.
1 parent d1b8177 commit 28d99f6

File tree

2 files changed

+20
-1
lines changed

2 files changed

+20
-1
lines changed

src/Mapping/PropertyMapping.php

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -288,7 +288,7 @@ public function getUploadName(object $obj): string
288288
*
289289
* @return string|null The upload directory
290290
*/
291-
public function getUploadDir(object $obj): ?string
291+
public function getUploadDir(object|array $obj): ?string
292292
{
293293
if (!$this->hasDirectoryNamer()) {
294294
return '';

tests/Mapping/PropertyMappingTest.php

Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,7 @@
66
use Vich\TestBundle\Entity\Article;
77
use Vich\TestBundle\Naming\DummyNamer;
88
use Vich\UploaderBundle\Mapping\PropertyMapping;
9+
use Vich\UploaderBundle\Naming\ConfigurableDirectoryNamer;
910
use Vich\UploaderBundle\Naming\DirectoryNamerInterface;
1011
use Vich\UploaderBundle\Naming\NamerInterface;
1112
use Vich\UploaderBundle\Tests\DummyEntity;
@@ -157,4 +158,22 @@ public function testErase(): void
157158
self::assertNull($object->getMimeTypeField());
158159
self::assertNull($object->getSizeField());
159160
}
161+
162+
public function testWithArray(): void
163+
{
164+
$prop = new PropertyMapping(
165+
'image',
166+
'imageName',
167+
);
168+
169+
$directoryNamer = new ConfigurableDirectoryNamer();
170+
$directoryNamer->configure([
171+
'directory_path' => 'fake',
172+
]);
173+
$prop->setDirectoryNamer($directoryNamer);
174+
175+
$object = [];
176+
$actual = $prop->getUploadDir($object);
177+
self::assertEquals('fake', $actual);
178+
}
160179
}

0 commit comments

Comments
 (0)