Skip to content

Commit

Permalink
Fix: Do not persist embeddables
Browse files Browse the repository at this point in the history
  • Loading branch information
localheinz committed Mar 6, 2020
1 parent d2f0bb0 commit 4e1ac25
Showing 1 changed file with 8 additions and 2 deletions.
10 changes: 8 additions & 2 deletions src/Provider/Doctrine/FixtureFactory.php
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,7 @@
use Doctrine\ORM\EntityManager;
use Doctrine\Common\Collections\Collection;
use Doctrine\Common\Collections\ArrayCollection;
use Doctrine\ORM\Mapping;
use Exception;

/**
Expand Down Expand Up @@ -84,12 +85,17 @@ public function get($name, array $fieldOverrides = [])
throw EntityDefinitionUnavailable::for($name);
}

/** @var EntityDef $def */
$def = $this->entityDefs[$name];

$config = $def->getConfig();

$this->checkFieldOverrides($def, $fieldOverrides);

$ent = $def->getEntityMetadata()->newInstance();
/** @var Mapping\ClassMetadata $entityMetadata */
$entityMetadata = $def->getEntityMetadata();

$ent = $entityMetadata->newInstance();
$fieldValues = [];
foreach ($def->getFieldDefs() as $fieldName => $fieldDef) {
$fieldValues[$fieldName] = array_key_exists($fieldName, $fieldOverrides)
Expand All @@ -105,7 +111,7 @@ public function get($name, array $fieldOverrides = [])
$config['afterCreate']($ent, $fieldValues);
}

if ($this->persist) {
if ($this->persist && false === $entityMetadata->isEmbeddedClass) {
$this->em->persist($ent);
}

Expand Down

0 comments on commit 4e1ac25

Please sign in to comment.