1
0
mirror of synced 2024-12-15 15:46:02 +03:00
doctrine2/tests/Doctrine/Tests/ORM/Functional/JoinedTableCompositeKeyTest.php
Thomas Rothe fb055ca75d fixed problems with joined inheritance and composite keys
SchemaTool now creates all Id columns not just only the first one.
Insert statement for child entity now contains parameter for additional key columns only once.
2012-12-16 18:20:10 +01:00

65 lines
1.5 KiB
PHP

<?php
namespace Doctrine\Tests\ORM\Functional;
use Doctrine\Tests\OrmFunctionalTestCase;
use Doctrine\Tests\Models\CompositeKeyInheritance\JoinedChildClass;
class JoinedTableCompositeKeyTest extends OrmFunctionalTestCase
{
public function setUp()
{
$this->useModelSet('compositekeyinheritance');
parent::setUp();
}
/**
*
*/
public function testInsertWithCompositeKey()
{
$childEntity = new JoinedChildClass();
$this->_em->persist($childEntity);
$this->_em->flush();
$this->_em->clear();
$entity = $this->findEntity();
$this->assertEquals($childEntity, $entity);
}
/**
*
*/
public function testUpdateWithCompositeKey()
{
$childEntity = new JoinedChildClass();
$this->_em->persist($childEntity);
$this->_em->flush();
$this->_em->clear();
$entity = $this->findEntity();
$entity->extension = 'ext-new';
$this->_em->persist($entity);
$this->_em->flush();
$this->_em->clear();
$persistedEntity = $this->findEntity();
$this->assertEquals($entity, $persistedEntity);
}
/**
* @return \Doctrine\Tests\Models\CompositeKeyInheritance\JoinedChildClass
*/
private function findEntity()
{
return $this->_em->find(
'Doctrine\Tests\Models\CompositeKeyInheritance\JoinedRootClass',
array('keyPart1' => 'part-1', 'keyPart2' => 'part-2')
);
}
}