/** * @covers Kunstmaan\NodeBundle\Entity\NodeVersion::setRef * @covers Kunstmaan\NodeBundle\Entity\NodeVersion::getRefId * @covers Kunstmaan\NodeBundle\Entity\NodeVersion::getRefEntityName * @covers Kunstmaan\NodeBundle\Entity\NodeVersion::setRefId * @covers Kunstmaan\NodeBundle\Entity\NodeVersion::setRefEntityName */ public function testGetSetRef() { $entity = new TestEntity(1); $this->object->setRef($entity); $this->assertEquals(1, $this->object->getRefId()); $this->assertEquals('Kunstmaan\\NodeBundle\\Tests\\Entity\\TestEntity', $this->object->getRefEntityName()); }
/** * @param HasNodeInterface $hasNode The object * @param NodeTranslation $nodeTranslation The node translation * @param BaseUser $owner The user * @param NodeVersion $origin The nodeVersion this nodeVersion originated from * @param string $type (public|draft) * @param DateTime $created The date this node version is created * * @return NodeVersion */ public function createNodeVersionFor(HasNodeInterface $hasNode, NodeTranslation $nodeTranslation, BaseUser $owner, NodeVersion $origin = null, $type = 'public', $created = null) { $em = $this->getEntityManager(); $nodeVersion = new NodeVersion(); $nodeVersion->setNodeTranslation($nodeTranslation); $nodeVersion->setType($type); $nodeVersion->setOwner($owner); $nodeVersion->setRef($hasNode); $nodeVersion->setOrigin($origin); if (!is_null($created)) { $nodeVersion->setCreated($created); } $em->persist($nodeVersion); $em->flush(); $em->refresh($nodeVersion); return $nodeVersion; }
public function postFlushBuild(Fixture $fixture) { $entities = $fixture->getAdditionalEntities(); $fixtureParams = $fixture->getParameters(); foreach ($fixture->getTranslations() as $language => $data) { /** @var HasNodeInterface $page */ $page = $entities[$fixture->getName() . '_' . $language]; /** @var NodeTranslation $translationNode */ $translationNode = $entities['translationNode_' . $language]; $pagecreator = array_key_exists('creator', $fixtureParams) ? $fixtureParams['creator'] : 'pagecreator'; $creator = $this->userRepo->findOneBy(array('username' => $pagecreator)); $nodeVersion = new NodeVersion(); $nodeVersion->setNodeTranslation($translationNode); $nodeVersion->setType('public'); $nodeVersion->setOwner($creator); $nodeVersion->setRef($page); $translationNode->setPublicNodeVersion($nodeVersion); if (isset($fixtureParams['template'])) { $pageTemplateConfiguration = new PageTemplateConfiguration(); $pageTemplateConfiguration->setPageId($page->getId()); $pageTemplateConfiguration->setPageEntityName(ClassLookup::getClass($page)); $pageTemplateConfiguration->setPageTemplate($fixtureParams['template']); $this->manager->persist($pageTemplateConfiguration); } $this->manager->persist($nodeVersion); $this->manager->persist($translationNode); } $this->manager->flush(); }