Skip to content

Commit ee65959

Browse files
Merge branch '2.3' of github.com:darkwebdesign/symfony-addon-pack into ISSUE-2
2 parents 325c4eb + 1f4c1d0 commit ee65959

File tree

2 files changed

+15
-5
lines changed

2 files changed

+15
-5
lines changed

src/EntityToIdentifierTransformer.php

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -58,9 +58,9 @@ class EntityToIdentifierTransformer implements DataTransformerInterface
5858
public function __construct(ObjectManager $entityManager, $className)
5959
{
6060
$this->entityManager = $entityManager;
61-
$this->className = $className;
62-
$this->repository = $this->entityManager->getRepository($this->className);
63-
$this->metadata = $this->entityManager->getClassMetadata($this->className);
61+
$this->repository = $this->entityManager->getRepository($className);
62+
$this->metadata = $this->entityManager->getClassMetadata($className);
63+
$this->className = $this->metadata->getName();
6464

6565
if ($this->metadata->isIdentifierComposite) {
6666
throw new InvalidArgumentException('Expected an entity with a single identifier.');
@@ -86,9 +86,9 @@ public function transform($value)
8686
throw new TransformationFailedException('Expected an object.');
8787
}
8888

89-
$class = ClassUtils::getClass($value);
89+
$className = ClassUtils::getClass($value);
9090

91-
if ($class !== $this->className) {
91+
if ($className !== $this->className) {
9292
throw new TransformationFailedException(sprintf('Expected entity %s.', $this->className));
9393
}
9494

tests/EntityToIdentifierTransformerTest.php

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -61,6 +61,7 @@ protected function setUp()
6161
$this->entityManager->method('getRepository')->willReturn($this->repository);
6262
$this->entityManager->method('getClassMetadata')->willReturn($this->metadata);
6363

64+
$this->metadata->method('getName')->willReturn($this->className);
6465
$this->metadata->method('getIdentifierValues')->willReturn(array('id' => $this->identifier));
6566

6667
$this->metadata->isIdentifierComposite = false;
@@ -86,6 +87,15 @@ public function testTransform()
8687
$this->assertSame($this->identifier, $identifier);
8788
}
8889

90+
public function testTransformAlias()
91+
{
92+
$transformer = new EntityToIdentifierTransformer($this->entityManager, 'AppBundle:City');
93+
94+
$identifier = $transformer->transform($this->entity);
95+
96+
$this->assertSame($this->identifier, $identifier);
97+
}
98+
8999
public function testTransformNull()
90100
{
91101
$transformer = new EntityToIdentifierTransformer($this->entityManager, $this->className);

0 commit comments

Comments
 (0)