Esempio n. 1
0
 public function testGetEntityStateWithAssignedIdentity()
 {
     $persister = new EntityPersisterMock($this->_emMock, $this->_emMock->getClassMetadata('Doctrine\\Tests\\Models\\CMS\\CmsPhonenumber'));
     $this->_unitOfWork->setEntityPersister('Doctrine\\Tests\\Models\\CMS\\CmsPhonenumber', $persister);
     $ph = new \Doctrine\Tests\Models\CMS\CmsPhonenumber();
     $ph->phonenumber = '12345';
     $this->assertEquals(UnitOfWork::STATE_NEW, $this->_unitOfWork->getEntityState($ph));
     $this->assertTrue($persister->isExistsCalled());
     $persister->reset();
     // if the entity is already managed the exists() check should be skipped
     $this->_unitOfWork->registerManaged($ph, array('phonenumber' => '12345'), array());
     $this->assertEquals(UnitOfWork::STATE_MANAGED, $this->_unitOfWork->getEntityState($ph));
     $this->assertFalse($persister->isExistsCalled());
     $ph2 = new \Doctrine\Tests\Models\CMS\CmsPhonenumber();
     $ph2->phonenumber = '12345';
     $this->assertEquals(UnitOfWork::STATE_DETACHED, $this->_unitOfWork->getEntityState($ph2));
     $this->assertFalse($persister->isExistsCalled());
 }