public function testManyToManyToCTIHierarchy() { //$this->_em->getConnection()->getConfiguration()->setSQLLogger(new \Doctrine\DBAL\Logging\EchoSQLLogger()); $mmrel = new CTIRelated2(); $child = new CTIChild(); $child->setData('child'); $mmrel->addCTIChild($child); $this->_em->persist($mmrel); $this->_em->persist($child); $this->_em->flush(); $this->_em->clear(); $mmrel2 = $this->_em->find(get_class($mmrel), $mmrel->getId()); $this->assertFalse($mmrel2->getCTIChildren()->isInitialized()); $this->assertEquals(1, count($mmrel2->getCTIChildren())); $this->assertTrue($mmrel2->getCTIChildren()->isInitialized()); $this->assertInstanceOf('Doctrine\\Tests\\ORM\\Functional\\CTIChild', $mmrel2->getCTIChildren()->get(0)); }
public function testOneToOneAssocToBaseTypeBidirectional() { $child = new CTIChild(); $child->setData('hello'); $related = new CTIRelated(); $related->setCTIParent($child); $this->_em->persist($related); $this->_em->persist($child); $this->_em->flush(); $this->_em->clear(); $relatedId = $related->getId(); $related2 = $this->_em->find('Doctrine\\Tests\\ORM\\Functional\\CTIRelated', $relatedId); $this->assertTrue($related2 instanceof CTIRelated); $this->assertTrue($related2->getCTIParent() instanceof CTIChild); $this->assertFalse($related2->getCTIParent() instanceof \Doctrine\ORM\Proxy\Proxy); $this->assertEquals('hello', $related2->getCTIParent()->getData()); $this->assertSame($related2, $related2->getCTIParent()->getRelated()); }