public function setup() { $this->entityManager->transactional(function () { $privileges = $this->createPrivileges(); if (!empty($privileges)) { $this->entityManager->persist($privileges); } $invalidPrivileges = $this->findInvalidPrivileges($privileges); if (!empty($invalidPrivileges)) { $this->entityManager->remove($invalidPrivileges); } $roles = $this->createRoles($privileges); if (!empty($roles)) { $this->entityManager->persist($roles); } }); }