12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667 |
- <?php
- namespace Doctrine\Tests\ORM\Id;
- use Doctrine\ORM\Id\AssignedGenerator;
- require_once __DIR__ . '/../../TestInit.php';
- /**
- * AssignedGeneratorTest
- *
- * @author robo
- */
- class AssignedGeneratorTest extends \Doctrine\Tests\OrmTestCase
- {
- private $_em;
- private $_assignedGen;
- protected function setUp()
- {
- $this->_em = $this->_getTestEntityManager();
- $this->_assignedGen = new AssignedGenerator;
- }
- public function testThrowsExceptionIfIdNotAssigned()
- {
- try {
- $entity = new AssignedSingleIdEntity;
- $this->_assignedGen->generate($this->_em, $entity);
- $this->fail('Assigned generator did not throw exception even though ID was missing.');
- } catch (\Doctrine\ORM\ORMException $expected) {}
- try {
- $entity = new AssignedCompositeIdEntity;
- $this->_assignedGen->generate($this->_em, $entity);
- $this->fail('Assigned generator did not throw exception even though ID was missing.');
- } catch (\Doctrine\ORM\ORMException $expected) {}
- }
- public function testCorrectIdGeneration()
- {
- $entity = new AssignedSingleIdEntity;
- $entity->myId = 1;
- $id = $this->_assignedGen->generate($this->_em, $entity);
- $this->assertEquals(array('myId' => 1), $id);
- $entity = new AssignedCompositeIdEntity;
- $entity->myId2 = 2;
- $entity->myId1 = 4;
- $id = $this->_assignedGen->generate($this->_em, $entity);
- $this->assertEquals(array('myId1' => 4, 'myId2' => 2), $id);
- }
- }
- /** @Entity */
- class AssignedSingleIdEntity {
- /** @Id @Column(type="integer") */
- public $myId;
- }
- /** @Entity */
- class AssignedCompositeIdEntity {
- /** @Id @Column(type="integer") */
- public $myId1;
- /** @Id @Column(type="integer") */
- public $myId2;
- }
|