1
0
mirror of synced 2025-02-03 05:49:25 +03:00

fixes in tests

This commit is contained in:
Maciej Kosiedowski 2017-05-22 15:52:19 +02:00
parent f304685c68
commit 76f0fe45af
2 changed files with 37 additions and 8 deletions

View File

@ -2,12 +2,14 @@
namespace Doctrine\Tests\ORM\Functional\Ticket; namespace Doctrine\Tests\ORM\Functional\Ticket;
use Doctrine\DBAL\Schema\SchemaException;
use Doctrine\ORM\Mapping\Column; use Doctrine\ORM\Mapping\Column;
use Doctrine\ORM\Mapping\Embeddable; use Doctrine\ORM\Mapping\Embeddable;
use Doctrine\ORM\Mapping\Entity; use Doctrine\ORM\Mapping\Entity;
use Doctrine\ORM\Mapping\Id; use Doctrine\ORM\Mapping\Id;
use Doctrine\ORM\Mapping\GeneratedValue; use Doctrine\ORM\Mapping\GeneratedValue;
use Doctrine\ORM\Mapping\ManyToOne; use Doctrine\ORM\Mapping\ManyToOne;
use Doctrine\ORM\Proxy\Proxy;
class DDC6460Test extends \Doctrine\Tests\OrmFunctionalTestCase class DDC6460Test extends \Doctrine\Tests\OrmFunctionalTestCase
{ {
@ -16,16 +18,19 @@ class DDC6460Test extends \Doctrine\Tests\OrmFunctionalTestCase
parent::setUp(); parent::setUp();
try { try {
$this->_schemaTool->createSchema( $this->setUpEntitySchema(
[ [
$this->_em->getClassMetadata(DDC6460Entity::class), DDC6460Entity::class,
$this->_em->getClassMetadata(DDC6460ParentEntity::class), DDC6460ParentEntity::class,
] ]
); );
} catch (\Exception $e) { } catch (SchemaException $e) {
} }
} }
/**
* @group DDC-6460
*/
public function testInlineEmbeddable() public function testInlineEmbeddable()
{ {
$isFieldMapped = $this->_em $isFieldMapped = $this->_em
@ -35,6 +40,9 @@ class DDC6460Test extends \Doctrine\Tests\OrmFunctionalTestCase
$this->assertTrue($isFieldMapped); $this->assertTrue($isFieldMapped);
} }
/**
* @group DDC-6460
*/
public function testInlineEmbeddableProxyInitialization() public function testInlineEmbeddableProxyInitialization()
{ {
$entity = new DDC6460Entity(); $entity = new DDC6460Entity();
@ -42,7 +50,6 @@ class DDC6460Test extends \Doctrine\Tests\OrmFunctionalTestCase
$entity->embedded = new DDC6460Embeddable(); $entity->embedded = new DDC6460Embeddable();
$entity->embedded->field = 'test'; $entity->embedded->field = 'test';
$this->_em->persist($entity); $this->_em->persist($entity);
$this->_em->flush();
$second = new DDC6460ParentEntity(); $second = new DDC6460ParentEntity();
$second->id = 1; $second->id = 1;
@ -52,9 +59,13 @@ class DDC6460Test extends \Doctrine\Tests\OrmFunctionalTestCase
$this->_em->clear(); $this->_em->clear();
$proxy = $this->_em->getRepository(DDC6460ParentEntity::class)->findOneById(1); $secondEntityWithLazyParameter = $this->_em->getRepository(DDC6460ParentEntity::class)->findOneById(1);
$this->assertNotNull($proxy->lazyLoaded->embedded); $this->assertInstanceOf(Proxy::class, $secondEntityWithLazyParameter->lazyLoaded);
$this->assertInstanceOf(DDC6460Entity::class, $secondEntityWithLazyParameter->lazyLoaded);
$this->assertFalse($secondEntityWithLazyParameter->lazyLoaded->__isInitialized());
$this->assertEquals($secondEntityWithLazyParameter->lazyLoaded->embedded, $entity->embedded);
$this->assertTrue($secondEntityWithLazyParameter->lazyLoaded->__isInitialized());
} }
} }
@ -95,6 +106,6 @@ class DDC6460ParentEntity
*/ */
public $id; public $id;
/** @ManyToOne(targetEntity = "DDC6460Entity", fetch="EXTRA_LAZY") */ /** @ManyToOne(targetEntity = "DDC6460Entity", fetch="EXTRA_LAZY", cascade={"persist"}) */
public $lazyLoaded; public $lazyLoaded;
} }

View File

@ -1269,6 +1269,24 @@ class ClassMetadataTest extends OrmTestCase
self::assertSame(['foo', 'baz'], $metadata->getColumnNames(['status', 'name'])); self::assertSame(['foo', 'baz'], $metadata->getColumnNames(['status', 'name']));
} }
/**
* @group DDC-6460
*/
public function testInlineEmbeddable()
{
$classMetadata = new ClassMetadata(TestEntity1::class);
$classMetadata->mapEmbedded(
[
'fieldName' => 'test',
'class' => TestEntity1::class,
'columnPrefix' => false,
]
);
$this->assertTrue($classMetadata->hasField('test'));
}
} }
/** /**