X-Git-Url: http://git.inspyration.org/?a=blobdiff_plain;f=vendor%2Fdoctrine%2Form%2Ftests%2FDoctrine%2FTests%2FORM%2FFunctional%2FTicket%2FDDC1843Test.php;fp=vendor%2Fdoctrine%2Form%2Ftests%2FDoctrine%2FTests%2FORM%2FFunctional%2FTicket%2FDDC1843Test.php;h=15cfd5903b4cf650f337297f622d7a3b162f81b3;hb=8b04b2d11798dee4f3e1358e4f43e97a6df851f6;hp=0000000000000000000000000000000000000000;hpb=73568cf05a785a45f94ca3f2351d9e07bf917958;p=zf2.biz%2Fapplication_blanche.git diff --git a/vendor/doctrine/orm/tests/Doctrine/Tests/ORM/Functional/Ticket/DDC1843Test.php b/vendor/doctrine/orm/tests/Doctrine/Tests/ORM/Functional/Ticket/DDC1843Test.php new file mode 100644 index 0000000..15cfd59 --- /dev/null +++ b/vendor/doctrine/orm/tests/Doctrine/Tests/ORM/Functional/Ticket/DDC1843Test.php @@ -0,0 +1,136 @@ +_schemaTool->createSchema(array( + $this->_em->getClassMetadata('Doctrine\Tests\Models\Quote\User'), + $this->_em->getClassMetadata('Doctrine\Tests\Models\Quote\Group'), + $this->_em->getClassMetadata('Doctrine\Tests\Models\Quote\Phone'), + $this->_em->getClassMetadata('Doctrine\Tests\Models\Quote\Address'), + )); + } catch(\Exception $e) { + } + } + + public function testCreateRetreaveUpdateDelete() + { + + $e1 = new Group('Parent Bar 1'); + $e2 = new Group('Parent Foo 2'); + + $this->_em->persist($e1); + $this->_em->persist($e2); + $this->_em->flush(); + + $e3 = new Group('Bar 3', $e1); + $e4 = new Group('Foo 4', $e2); + + // Create + $this->_em->persist($e3); + $this->_em->persist($e4); + $this->_em->flush(); + $this->_em->clear(); + + $e1Id = $e1->id; + $e2Id = $e2->id; + $e3Id = $e3->id; + $e4Id = $e4->id; + + // Retreave + $e1 = $this->_em->find('Doctrine\Tests\Models\Quote\Group', $e1Id); + $e2 = $this->_em->find('Doctrine\Tests\Models\Quote\Group', $e2Id); + $e3 = $this->_em->find('Doctrine\Tests\Models\Quote\Group', $e3Id); + $e4 = $this->_em->find('Doctrine\Tests\Models\Quote\Group', $e4Id); + + $this->assertInstanceOf('Doctrine\Tests\Models\Quote\Group', $e1); + $this->assertInstanceOf('Doctrine\Tests\Models\Quote\Group', $e2); + $this->assertInstanceOf('Doctrine\Tests\Models\Quote\Group', $e3); + $this->assertInstanceOf('Doctrine\Tests\Models\Quote\Group', $e4); + + $this->assertEquals($e1Id, $e1->id); + $this->assertEquals($e2Id, $e2->id); + $this->assertEquals($e3Id, $e3->id); + $this->assertEquals($e4Id, $e4->id); + + + $this->assertEquals('Parent Bar 1', $e1->name); + $this->assertEquals('Parent Foo 2', $e2->name); + $this->assertEquals('Bar 3', $e3->name); + $this->assertEquals('Foo 4', $e4->name); + + $e1->name = 'Parent Bar 11'; + $e2->name = 'Parent Foo 22'; + $e3->name = 'Bar 33'; + $e4->name = 'Foo 44'; + + // Update + $this->_em->persist($e1); + $this->_em->persist($e2); + $this->_em->persist($e3); + $this->_em->persist($e4); + $this->_em->flush(); + + $this->assertEquals('Parent Bar 11', $e1->name); + $this->assertEquals('Parent Foo 22', $e2->name); + $this->assertEquals('Bar 33', $e3->name); + $this->assertEquals('Foo 44', $e4->name); + + $this->assertInstanceOf('Doctrine\Tests\Models\Quote\Group', $e1); + $this->assertInstanceOf('Doctrine\Tests\Models\Quote\Group', $e2); + $this->assertInstanceOf('Doctrine\Tests\Models\Quote\Group', $e3); + $this->assertInstanceOf('Doctrine\Tests\Models\Quote\Group', $e4); + + $this->assertEquals($e1Id, $e1->id); + $this->assertEquals($e2Id, $e2->id); + $this->assertEquals($e3Id, $e3->id); + $this->assertEquals($e4Id, $e4->id); + + $this->assertEquals('Parent Bar 11', $e1->name); + $this->assertEquals('Parent Foo 22', $e2->name); + $this->assertEquals('Bar 33', $e3->name); + $this->assertEquals('Foo 44', $e4->name); + + // Delete + $this->_em->remove($e4); + $this->_em->remove($e3); + $this->_em->remove($e2); + $this->_em->remove($e1); + + $this->_em->flush(); + $this->_em->clear(); + + + $this->assertInstanceOf('Doctrine\Tests\Models\Quote\Group', $e1); + $this->assertInstanceOf('Doctrine\Tests\Models\Quote\Group', $e2); + $this->assertInstanceOf('Doctrine\Tests\Models\Quote\Group', $e3); + $this->assertInstanceOf('Doctrine\Tests\Models\Quote\Group', $e4); + + // Retreave + $e1 = $this->_em->find('Doctrine\Tests\Models\Quote\Group', $e1Id); + $e2 = $this->_em->find('Doctrine\Tests\Models\Quote\Group', $e2Id); + $e3 = $this->_em->find('Doctrine\Tests\Models\Quote\Group', $e3Id); + $e4 = $this->_em->find('Doctrine\Tests\Models\Quote\Group', $e4Id); + + $this->assertNull($e1); + $this->assertNull($e2); + $this->assertNull($e3); + $this->assertNull($e4); + } + +} \ No newline at end of file