X-Git-Url: http://git.inspyration.org/?a=blobdiff_plain;f=vendor%2Fdoctrine%2Form%2Ftests%2FDoctrine%2FTests%2FORM%2FFunctional%2FTicket%2FDDC1080Test.php;fp=vendor%2Fdoctrine%2Form%2Ftests%2FDoctrine%2FTests%2FORM%2FFunctional%2FTicket%2FDDC1080Test.php;h=2b9d579a59e001a2682fb5132ce686d2f499c917;hb=8b04b2d11798dee4f3e1358e4f43e97a6df851f6;hp=0000000000000000000000000000000000000000;hpb=73568cf05a785a45f94ca3f2351d9e07bf917958;p=zf2.biz%2Fapplication_blanche.git diff --git a/vendor/doctrine/orm/tests/Doctrine/Tests/ORM/Functional/Ticket/DDC1080Test.php b/vendor/doctrine/orm/tests/Doctrine/Tests/ORM/Functional/Ticket/DDC1080Test.php new file mode 100644 index 0000000..2b9d579 --- /dev/null +++ b/vendor/doctrine/orm/tests/Doctrine/Tests/ORM/Functional/Ticket/DDC1080Test.php @@ -0,0 +1,317 @@ +_schemaTool->createSchema(array( + $this->_em->getClassMetadata(__NAMESPACE__ . '\DDC1080Foo'), + $this->_em->getClassMetadata(__NAMESPACE__ . '\DDC1080Bar'), + $this->_em->getClassMetadata(__NAMESPACE__ . '\DDC1080FooBar'), + )); + + $foo1 = new DDC1080Foo(); + $foo1->setFooTitle('foo title 1'); + $foo2 = new DDC1080Foo(); + $foo2->setFooTitle('foo title 2'); + + $bar1 = new DDC1080Bar(); + $bar1->setBarTitle('bar title 1'); + $bar2 = new DDC1080Bar(); + $bar2->setBarTitle('bar title 2'); + $bar3 = new DDC1080Bar(); + $bar3->setBarTitle('bar title 3'); + + $foobar1 = new DDC1080FooBar(); + $foobar1->setFoo($foo1); + $foobar1->setBar($bar1); + $foobar1->setOrderNr(0); + + $foobar2 = new DDC1080FooBar(); + $foobar2->setFoo($foo1); + $foobar2->setBar($bar2); + $foobar2->setOrderNr(0); + + $foobar3 = new DDC1080FooBar(); + $foobar3->setFoo($foo1); + $foobar3->setBar($bar3); + $foobar3->setOrderNr(0); + + $this->_em->persist($foo1); + $this->_em->persist($foo2); + $this->_em->persist($bar1); + $this->_em->persist($bar2); + $this->_em->persist($bar3); + $this->_em->flush(); + + $this->_em->persist($foobar1); + $this->_em->persist($foobar2); + $this->_em->persist($foobar3); + $this->_em->flush(); + $this->_em->clear(); + + $foo = $this->_em->find('Doctrine\Tests\ORM\Functional\Ticket\DDC1080Foo', $foo1->getFooId()); + $fooBars = $foo->getFooBars(); + + $this->assertEquals(3, count($fooBars), "Should return three foobars."); + } +} + + +/** + * @Entity + * @Table(name="foo") + */ +class DDC1080Foo +{ + + /** + * @Id + * @Column(name="fooID", type="integer") + * @GeneratedValue(strategy="AUTO") + */ + protected $_fooID; + /** + * @Column(name="fooTitle", type="string") + */ + protected $_fooTitle; + /** + * @OneToMany(targetEntity="DDC1080FooBar", mappedBy="_foo", + * cascade={"persist"}) + * @OrderBy({"_orderNr"="ASC"}) + */ + protected $_fooBars; + + public function __construct() + { + $this->_fooBars = new \Doctrine\Common\Collections\ArrayCollection(); + } + + /** + * @return the $fooID + */ + public function getFooID() + { + return $this->_fooID; + } + + /** + * @return the $fooTitle + */ + public function getFooTitle() + { + return $this->_fooTitle; + } + + /** + * @return the $fooBars + */ + public function getFooBars() + { + return $this->_fooBars; + } + + /** + * @param field_type $fooID + */ + public function setFooID($fooID) + { + $this->_fooID = $fooID; + } + + /** + * @param field_type $fooTitle + */ + public function setFooTitle($fooTitle) + { + $this->_fooTitle = $fooTitle; + } + + /** + * @param field_type $fooBars + */ + public function setFooBars($fooBars) + { + $this->_fooBars = $fooBars; + } + +} +/** + * @Entity + * @Table(name="bar") + */ +class DDC1080Bar +{ + + /** + * @Id + * @Column(name="barID", type="integer") + * @GeneratedValue(strategy="AUTO") + */ + protected $_barID; + /** + * @Column(name="barTitle", type="string") + */ + protected $_barTitle; + /** + * @OneToMany(targetEntity="DDC1080FooBar", mappedBy="_bar", + * cascade={"persist"}) + * @OrderBy({"_orderNr"="ASC"}) + */ + protected $_fooBars; + + public function __construct() + { + $this->_fooBars = new \Doctrine\Common\Collections\ArrayCollection(); + } + + /** + * @return the $barID + */ + public function getBarID() + { + return $this->_barID; + } + + /** + * @return the $barTitle + */ + public function getBarTitle() + { + return $this->_barTitle; + } + + /** + * @return the $fooBars + */ + public function getFooBars() + { + return $this->_fooBars; + } + + /** + * @param field_type $barID + */ + public function setBarID($barID) + { + $this->_barID = $barID; + } + + /** + * @param field_type $barTitle + */ + public function setBarTitle($barTitle) + { + $this->_barTitle = $barTitle; + } + + /** + * @param field_type $fooBars + */ + public function setFooBars($fooBars) + { + $this->_fooBars = $fooBars; + } + +} + +/** + * @Table(name="fooBar") + * @Entity + */ +class DDC1080FooBar +{ + + /** + * @ManyToOne(targetEntity="DDC1080Foo") + * @JoinColumn(name="fooID", referencedColumnName="fooID") + * @Id + */ + protected $_foo = null; + /** + * @ManyToOne(targetEntity="DDC1080Bar") + * @JoinColumn(name="barID", referencedColumnName="barID") + * @Id + */ + protected $_bar = null; + /** + * @var integer orderNr + * @Column(name="orderNr", type="integer", nullable=false) + */ + protected $_orderNr = null; + + /** + * Retrieve the foo property + * + * @return DDC1080Foo + */ + public function getFoo() + { + return $this->_foo; + } + + /** + * Set the foo property + * + * @param DDC1080Foo $foo + * @return DDC1080FooBar + */ + public function setFoo($foo) + { + $this->_foo = $foo; + return $this; + } + + /** + * Retrieve the bar property + * + * @return DDC1080Bar + */ + public function getBar() + { + return $this->_bar; + } + + /** + * Set the bar property + * + * @param DDC1080Bar $bar + * @return DDC1080FooBar + */ + public function setBar($bar) + { + $this->_bar = $bar; + return $this; + } + + /** + * Retrieve the orderNr property + * + * @return integer|null + */ + public function getOrderNr() + { + return $this->_orderNr; + } + + /** + * Set the orderNr property + * + * @param integer|null $orderNr + * @return DDC1080FooBar + */ + public function setOrderNr($orderNr) + { + $this->_orderNr = $orderNr; + return $this; + } + +} +