From ba3df8577b34cbf39692daf02c95f25e65278fbb Mon Sep 17 00:00:00 2001 From: "Jasper N. Brouwer" Date: Wed, 12 Nov 2014 23:04:16 +0100 Subject: [PATCH] Refined and added tests, fixed found issues - Renamed id properties so they don't coexist between entities in a test - Added tests for extra lazy one-to-many associations - Fixed production code to make tests green --- .../Entity/BasicEntityPersister.php | 11 +- .../ValueConversionType/AuxiliaryEntity.php | 2 +- ...dManyToManyCompositeIdForeignKeyEntity.php | 4 +- .../InversedManyToManyEntity.php | 2 +- ...edOneToManyCompositeIdForeignKeyEntity.php | 4 +- .../InversedOneToManyEntity.php | 2 +- .../InversedOneToManyExtraLazyEntity.php | 33 ++++++ ...sedOneToOneCompositeIdForeignKeyEntity.php | 4 +- .../InversedOneToOneEntity.php | 2 +- .../OwningManyToManyCompositeIdEntity.php | 4 +- ...gManyToManyCompositeIdForeignKeyEntity.php | 6 +- .../OwningManyToManyEntity.php | 6 +- .../OwningManyToOneCompositeIdEntity.php | 2 +- ...ngManyToOneCompositeIdForeignKeyEntity.php | 4 +- .../OwningManyToOneEntity.php | 4 +- .../OwningManyToOneExtraLazyEntity.php | 22 ++++ .../OwningOneToOneCompositeIdEntity.php | 2 +- ...ingOneToOneCompositeIdForeignKeyEntity.php | 4 +- .../OwningOneToOneEntity.php | 4 +- .../ManyToManyCompositeIdForeignKeyTest.php | 56 +++++++-- .../ManyToManyCompositeIdTest.php | 6 +- .../ValueConversionType/ManyToManyTest.php | 12 +- .../OneToManyCompositeIdForeignKeyTest.php | 54 +++++++-- .../OneToManyCompositeIdTest.php | 6 +- .../OneToManyExtraLazyTest.php | 111 ++++++++++++++++++ .../ValueConversionType/OneToManyTest.php | 12 +- .../OneToOneCompositeIdForeignKeyTest.php | 54 +++++++-- .../OneToOneCompositeIdTest.php | 6 +- .../ValueConversionType/OneToOneTest.php | 12 +- .../Doctrine/Tests/OrmFunctionalTestCase.php | 9 ++ 30 files changed, 366 insertions(+), 94 deletions(-) create mode 100644 tests/Doctrine/Tests/Models/ValueConversionType/InversedOneToManyExtraLazyEntity.php create mode 100644 tests/Doctrine/Tests/Models/ValueConversionType/OwningManyToOneExtraLazyEntity.php create mode 100644 tests/Doctrine/Tests/ORM/Functional/ValueConversionType/OneToManyExtraLazyTest.php diff --git a/lib/Doctrine/ORM/Persisters/Entity/BasicEntityPersister.php b/lib/Doctrine/ORM/Persisters/Entity/BasicEntityPersister.php index d39527128..740c09b40 100644 --- a/lib/Doctrine/ORM/Persisters/Entity/BasicEntityPersister.php +++ b/lib/Doctrine/ORM/Persisters/Entity/BasicEntityPersister.php @@ -1883,20 +1883,21 @@ class BasicEntityPersister implements EntityPersister . $this->getLockTablesSql(null) . ' WHERE ' . $this->getSelectConditionSQL($criteria); - list($params) = $this->expandParameters($criteria); + list($params, $types) = $this->expandParameters($criteria); if (null !== $extraConditions) { - $sql .= ' AND ' . $this->getSelectConditionCriteriaSQL($extraConditions); - list($criteriaParams, $values) = $this->expandCriteriaParameters($extraConditions); + $sql .= ' AND ' . $this->getSelectConditionCriteriaSQL($extraConditions); + list($extraParams, $extraTypes) = $this->expandCriteriaParameters($extraConditions); - $params = array_merge($params, $criteriaParams); + $params = array_merge($params, $extraParams); + $types = array_merge($types, $extraTypes); } if ($filterSql = $this->generateFilterConditionSQL($this->class, $alias)) { $sql .= ' AND ' . $filterSql; } - return (bool) $this->conn->fetchColumn($sql, $params); + return (bool) $this->conn->fetchColumn($sql, $params, 0, $types); } /** diff --git a/tests/Doctrine/Tests/Models/ValueConversionType/AuxiliaryEntity.php b/tests/Doctrine/Tests/Models/ValueConversionType/AuxiliaryEntity.php index d37413909..89025605b 100644 --- a/tests/Doctrine/Tests/Models/ValueConversionType/AuxiliaryEntity.php +++ b/tests/Doctrine/Tests/Models/ValueConversionType/AuxiliaryEntity.php @@ -12,5 +12,5 @@ class AuxiliaryEntity * @Column(type="rot13") * @Id */ - public $id; + public $id4; } diff --git a/tests/Doctrine/Tests/Models/ValueConversionType/InversedManyToManyCompositeIdForeignKeyEntity.php b/tests/Doctrine/Tests/Models/ValueConversionType/InversedManyToManyCompositeIdForeignKeyEntity.php index b53f559f9..9cc1a1207 100644 --- a/tests/Doctrine/Tests/Models/ValueConversionType/InversedManyToManyCompositeIdForeignKeyEntity.php +++ b/tests/Doctrine/Tests/Models/ValueConversionType/InversedManyToManyCompositeIdForeignKeyEntity.php @@ -14,11 +14,11 @@ class InversedManyToManyCompositeIdForeignKeyEntity * @Column(type="rot13") * @Id */ - public $id; + public $id1; /** * @ManyToOne(targetEntity="AuxiliaryEntity") - * @JoinColumn(name="foreign_id", referencedColumnName="id") + * @JoinColumn(name="foreign_id", referencedColumnName="id4") * @Id */ public $foreignEntity; diff --git a/tests/Doctrine/Tests/Models/ValueConversionType/InversedManyToManyEntity.php b/tests/Doctrine/Tests/Models/ValueConversionType/InversedManyToManyEntity.php index c2cab841c..3b0157655 100644 --- a/tests/Doctrine/Tests/Models/ValueConversionType/InversedManyToManyEntity.php +++ b/tests/Doctrine/Tests/Models/ValueConversionType/InversedManyToManyEntity.php @@ -14,7 +14,7 @@ class InversedManyToManyEntity * @Column(type="rot13") * @Id */ - public $id; + public $id1; /** * @ManyToMany(targetEntity="OwningManyToManyEntity", mappedBy="associatedEntities") diff --git a/tests/Doctrine/Tests/Models/ValueConversionType/InversedOneToManyCompositeIdForeignKeyEntity.php b/tests/Doctrine/Tests/Models/ValueConversionType/InversedOneToManyCompositeIdForeignKeyEntity.php index 571ce8378..e2212812e 100644 --- a/tests/Doctrine/Tests/Models/ValueConversionType/InversedOneToManyCompositeIdForeignKeyEntity.php +++ b/tests/Doctrine/Tests/Models/ValueConversionType/InversedOneToManyCompositeIdForeignKeyEntity.php @@ -14,11 +14,11 @@ class InversedOneToManyCompositeIdForeignKeyEntity * @Column(type="rot13") * @Id */ - public $id; + public $id1; /** * @ManyToOne(targetEntity="AuxiliaryEntity") - * @JoinColumn(name="foreign_id", referencedColumnName="id") + * @JoinColumn(name="foreign_id", referencedColumnName="id4") * @Id */ public $foreignEntity; diff --git a/tests/Doctrine/Tests/Models/ValueConversionType/InversedOneToManyEntity.php b/tests/Doctrine/Tests/Models/ValueConversionType/InversedOneToManyEntity.php index 8da0b10b9..ff8ec73a0 100644 --- a/tests/Doctrine/Tests/Models/ValueConversionType/InversedOneToManyEntity.php +++ b/tests/Doctrine/Tests/Models/ValueConversionType/InversedOneToManyEntity.php @@ -14,7 +14,7 @@ class InversedOneToManyEntity * @Column(type="rot13") * @Id */ - public $id; + public $id1; /** * @OneToMany(targetEntity="OwningManyToOneEntity", mappedBy="associatedEntity") diff --git a/tests/Doctrine/Tests/Models/ValueConversionType/InversedOneToManyExtraLazyEntity.php b/tests/Doctrine/Tests/Models/ValueConversionType/InversedOneToManyExtraLazyEntity.php new file mode 100644 index 000000000..26d0a58d0 --- /dev/null +++ b/tests/Doctrine/Tests/Models/ValueConversionType/InversedOneToManyExtraLazyEntity.php @@ -0,0 +1,33 @@ +associatedEntities = new ArrayCollection(); + } +} diff --git a/tests/Doctrine/Tests/Models/ValueConversionType/InversedOneToOneCompositeIdForeignKeyEntity.php b/tests/Doctrine/Tests/Models/ValueConversionType/InversedOneToOneCompositeIdForeignKeyEntity.php index 464ca5a01..fb6d43026 100644 --- a/tests/Doctrine/Tests/Models/ValueConversionType/InversedOneToOneCompositeIdForeignKeyEntity.php +++ b/tests/Doctrine/Tests/Models/ValueConversionType/InversedOneToOneCompositeIdForeignKeyEntity.php @@ -12,11 +12,11 @@ class InversedOneToOneCompositeIdForeignKeyEntity * @Column(type="rot13") * @Id */ - public $id; + public $id1; /** * @ManyToOne(targetEntity="AuxiliaryEntity") - * @JoinColumn(name="foreign_id", referencedColumnName="id") + * @JoinColumn(name="foreign_id", referencedColumnName="id4") * @Id */ public $foreignEntity; diff --git a/tests/Doctrine/Tests/Models/ValueConversionType/InversedOneToOneEntity.php b/tests/Doctrine/Tests/Models/ValueConversionType/InversedOneToOneEntity.php index d0483cb9c..d652908e2 100644 --- a/tests/Doctrine/Tests/Models/ValueConversionType/InversedOneToOneEntity.php +++ b/tests/Doctrine/Tests/Models/ValueConversionType/InversedOneToOneEntity.php @@ -12,7 +12,7 @@ class InversedOneToOneEntity * @Column(type="rot13") * @Id */ - public $id; + public $id1; /** * @Column(type="string", name="some_property") diff --git a/tests/Doctrine/Tests/Models/ValueConversionType/OwningManyToManyCompositeIdEntity.php b/tests/Doctrine/Tests/Models/ValueConversionType/OwningManyToManyCompositeIdEntity.php index d6d97fe03..01c08776f 100644 --- a/tests/Doctrine/Tests/Models/ValueConversionType/OwningManyToManyCompositeIdEntity.php +++ b/tests/Doctrine/Tests/Models/ValueConversionType/OwningManyToManyCompositeIdEntity.php @@ -14,13 +14,13 @@ class OwningManyToManyCompositeIdEntity * @Column(type="rot13") * @Id */ - public $id; + public $id3; /** * @ManyToMany(targetEntity="InversedManyToManyCompositeIdEntity", inversedBy="associatedEntities") * @JoinTable( * name="vct_xref_manytomany_compositeid", - * joinColumns={@JoinColumn(name="owning_id", referencedColumnName="id")}, + * joinColumns={@JoinColumn(name="owning_id", referencedColumnName="id3")}, * inverseJoinColumns={ * @JoinColumn(name="inversed_id1", referencedColumnName="id1"), * @JoinColumn(name="inversed_id2", referencedColumnName="id2") diff --git a/tests/Doctrine/Tests/Models/ValueConversionType/OwningManyToManyCompositeIdForeignKeyEntity.php b/tests/Doctrine/Tests/Models/ValueConversionType/OwningManyToManyCompositeIdForeignKeyEntity.php index 21e35b79a..abbb32d8a 100644 --- a/tests/Doctrine/Tests/Models/ValueConversionType/OwningManyToManyCompositeIdForeignKeyEntity.php +++ b/tests/Doctrine/Tests/Models/ValueConversionType/OwningManyToManyCompositeIdForeignKeyEntity.php @@ -14,15 +14,15 @@ class OwningManyToManyCompositeIdForeignKeyEntity * @Column(type="rot13") * @Id */ - public $id; + public $id2; /** * @ManyToMany(targetEntity="InversedManyToManyCompositeIdForeignKeyEntity", inversedBy="associatedEntities") * @JoinTable( * name="vct_xref_manytomany_compositeid_foreignkey", - * joinColumns={@JoinColumn(name="owning_id", referencedColumnName="id")}, + * joinColumns={@JoinColumn(name="owning_id", referencedColumnName="id2")}, * inverseJoinColumns={ - * @JoinColumn(name="associated_id", referencedColumnName="id"), + * @JoinColumn(name="associated_id", referencedColumnName="id1"), * @JoinColumn(name="associated_foreign_id", referencedColumnName="foreign_id") * } * ) diff --git a/tests/Doctrine/Tests/Models/ValueConversionType/OwningManyToManyEntity.php b/tests/Doctrine/Tests/Models/ValueConversionType/OwningManyToManyEntity.php index b05c87874..292ff7835 100644 --- a/tests/Doctrine/Tests/Models/ValueConversionType/OwningManyToManyEntity.php +++ b/tests/Doctrine/Tests/Models/ValueConversionType/OwningManyToManyEntity.php @@ -14,14 +14,14 @@ class OwningManyToManyEntity * @Column(type="rot13") * @Id */ - public $id; + public $id2; /** * @ManyToMany(targetEntity="InversedManyToManyEntity", inversedBy="associatedEntities") * @JoinTable( * name="vct_xref_manytomany", - * joinColumns={@JoinColumn(name="owning_id", referencedColumnName="id")}, - * inverseJoinColumns={@JoinColumn(name="inversed_id", referencedColumnName="id")} + * joinColumns={@JoinColumn(name="owning_id", referencedColumnName="id2")}, + * inverseJoinColumns={@JoinColumn(name="inversed_id", referencedColumnName="id1")} * ) */ public $associatedEntities; diff --git a/tests/Doctrine/Tests/Models/ValueConversionType/OwningManyToOneCompositeIdEntity.php b/tests/Doctrine/Tests/Models/ValueConversionType/OwningManyToOneCompositeIdEntity.php index d8f8a2bab..b06b2188b 100644 --- a/tests/Doctrine/Tests/Models/ValueConversionType/OwningManyToOneCompositeIdEntity.php +++ b/tests/Doctrine/Tests/Models/ValueConversionType/OwningManyToOneCompositeIdEntity.php @@ -12,7 +12,7 @@ class OwningManyToOneCompositeIdEntity * @Column(type="rot13") * @Id */ - public $id; + public $id3; /** * @ManyToOne(targetEntity="InversedOneToManyCompositeIdEntity", inversedBy="associatedEntities") diff --git a/tests/Doctrine/Tests/Models/ValueConversionType/OwningManyToOneCompositeIdForeignKeyEntity.php b/tests/Doctrine/Tests/Models/ValueConversionType/OwningManyToOneCompositeIdForeignKeyEntity.php index 291d9cf89..b6787a418 100644 --- a/tests/Doctrine/Tests/Models/ValueConversionType/OwningManyToOneCompositeIdForeignKeyEntity.php +++ b/tests/Doctrine/Tests/Models/ValueConversionType/OwningManyToOneCompositeIdForeignKeyEntity.php @@ -12,12 +12,12 @@ class OwningManyToOneCompositeIdForeignKeyEntity * @Column(type="rot13") * @Id */ - public $id; + public $id2; /** * @ManyToOne(targetEntity="InversedOneToManyCompositeIdForeignKeyEntity", inversedBy="associatedEntities") * @JoinColumns({ - * @JoinColumn(name="associated_id", referencedColumnName="id"), + * @JoinColumn(name="associated_id", referencedColumnName="id1"), * @JoinColumn(name="associated_foreign_id", referencedColumnName="foreign_id") * }) */ diff --git a/tests/Doctrine/Tests/Models/ValueConversionType/OwningManyToOneEntity.php b/tests/Doctrine/Tests/Models/ValueConversionType/OwningManyToOneEntity.php index 9f4afabab..b05a86b13 100644 --- a/tests/Doctrine/Tests/Models/ValueConversionType/OwningManyToOneEntity.php +++ b/tests/Doctrine/Tests/Models/ValueConversionType/OwningManyToOneEntity.php @@ -12,11 +12,11 @@ class OwningManyToOneEntity * @Column(type="rot13") * @Id */ - public $id; + public $id2; /** * @ManyToOne(targetEntity="InversedOneToManyEntity", inversedBy="associatedEntities") - * @JoinColumn(name="associated_id", referencedColumnName="id") + * @JoinColumn(name="associated_id", referencedColumnName="id1") */ public $associatedEntity; } diff --git a/tests/Doctrine/Tests/Models/ValueConversionType/OwningManyToOneExtraLazyEntity.php b/tests/Doctrine/Tests/Models/ValueConversionType/OwningManyToOneExtraLazyEntity.php new file mode 100644 index 000000000..aa4df0545 --- /dev/null +++ b/tests/Doctrine/Tests/Models/ValueConversionType/OwningManyToOneExtraLazyEntity.php @@ -0,0 +1,22 @@ +id = 'abc'; + $auxiliary->id4 = 'abc'; $inversed = new Entity\InversedManyToManyCompositeIdForeignKeyEntity(); - $inversed->id = 'def'; + $inversed->id1 = 'def'; $inversed->foreignEntity = $auxiliary; $owning = new Entity\OwningManyToManyCompositeIdForeignKeyEntity(); - $owning->id = 'ghi'; + $owning->id2 = 'ghi'; $inversed->associatedEntities->add($owning); $owning->associatedEntities->add($inversed); @@ -63,10 +63,12 @@ class ManyToManyCompositeIdForeignKeyTest extends OrmFunctionalTestCase { $conn = $this->_em->getConnection(); - $this->assertEquals('qrs', $conn->fetchColumn('SELECT id FROM vct_inversed_manytomany_compositeid_foreignkey LIMIT 1')); + $this->assertEquals('nop', $conn->fetchColumn('SELECT id4 FROM vct_auxiliary LIMIT 1')); + + $this->assertEquals('qrs', $conn->fetchColumn('SELECT id1 FROM vct_inversed_manytomany_compositeid_foreignkey LIMIT 1')); $this->assertEquals('nop', $conn->fetchColumn('SELECT foreign_id FROM vct_inversed_manytomany_compositeid_foreignkey LIMIT 1')); - $this->assertEquals('tuv', $conn->fetchColumn('SELECT id FROM vct_owning_manytomany_compositeid_foreignkey LIMIT 1')); + $this->assertEquals('tuv', $conn->fetchColumn('SELECT id2 FROM vct_owning_manytomany_compositeid_foreignkey LIMIT 1')); $this->assertEquals('qrs', $conn->fetchColumn('SELECT associated_id FROM vct_xref_manytomany_compositeid_foreignkey LIMIT 1')); $this->assertEquals('nop', $conn->fetchColumn('SELECT associated_foreign_id FROM vct_xref_manytomany_compositeid_foreignkey LIMIT 1')); @@ -78,9 +80,14 @@ class ManyToManyCompositeIdForeignKeyTest extends OrmFunctionalTestCase */ public function testThatEntitiesAreFetchedFromTheDatabase() { + $auxiliary = $this->_em->find( + 'Doctrine\Tests\Models\ValueConversionType\AuxiliaryEntity', + 'abc' + ); + $inversed = $this->_em->find( 'Doctrine\Tests\Models\ValueConversionType\InversedManyToManyCompositeIdForeignKeyEntity', - array('id' => 'def', 'foreignEntity' => 'abc') + array('id1' => 'def', 'foreignEntity' => 'abc') ); $owning = $this->_em->find( @@ -88,6 +95,7 @@ class ManyToManyCompositeIdForeignKeyTest extends OrmFunctionalTestCase 'ghi' ); + $this->assertInstanceOf('Doctrine\Tests\Models\ValueConversionType\AuxiliaryEntity', $auxiliary); $this->assertInstanceOf('Doctrine\Tests\Models\ValueConversionType\InversedManyToManyCompositeIdForeignKeyEntity', $inversed); $this->assertInstanceOf('Doctrine\Tests\Models\ValueConversionType\OwningManyToManyCompositeIdForeignKeyEntity', $owning); } @@ -97,9 +105,14 @@ class ManyToManyCompositeIdForeignKeyTest extends OrmFunctionalTestCase */ public function testThatTheValueOfIdentifiersAreConvertedBackAfterBeingFetchedFromTheDatabase() { + $auxiliary = $this->_em->find( + 'Doctrine\Tests\Models\ValueConversionType\AuxiliaryEntity', + 'abc' + ); + $inversed = $this->_em->find( 'Doctrine\Tests\Models\ValueConversionType\InversedManyToManyCompositeIdForeignKeyEntity', - array('id' => 'def', 'foreignEntity' => 'abc') + array('id1' => 'def', 'foreignEntity' => 'abc') ); $owning = $this->_em->find( @@ -107,9 +120,28 @@ class ManyToManyCompositeIdForeignKeyTest extends OrmFunctionalTestCase 'ghi' ); - $this->assertEquals('def', $inversed->id); - $this->assertEquals('abc', $inversed->foreignEntity->id); - $this->assertEquals('ghi', $owning->id); + $this->assertEquals('abc', $auxiliary->id4); + $this->assertEquals('def', $inversed->id1); + $this->assertEquals('abc', $inversed->foreignEntity->id4); + $this->assertEquals('ghi', $owning->id2); + } + + /** + * @depends testThatTheValueOfIdentifiersAreConvertedBackAfterBeingFetchedFromTheDatabase + */ + public function testThatInversedEntityIsFetchedFromTheDatabaseUsingAuxiliaryEntityAsId() + { + $auxiliary = $this->_em->find( + 'Doctrine\Tests\Models\ValueConversionType\AuxiliaryEntity', + 'abc' + ); + + $inversed = $this->_em->find( + 'Doctrine\Tests\Models\ValueConversionType\InversedManyToManyCompositeIdForeignKeyEntity', + array('id1' => 'def', 'foreignEntity' => $auxiliary) + ); + + $this->assertInstanceOf('Doctrine\Tests\Models\ValueConversionType\InversedManyToManyCompositeIdForeignKeyEntity', $inversed); } /** @@ -132,7 +164,7 @@ class ManyToManyCompositeIdForeignKeyTest extends OrmFunctionalTestCase { $inversed = $this->_em->find( 'Doctrine\Tests\Models\ValueConversionType\InversedManyToManyCompositeIdForeignKeyEntity', - array('id' => 'def', 'foreignEntity' => 'abc') + array('id1' => 'def', 'foreignEntity' => 'abc') ); $this->assertCount(1, $inversed->associatedEntities); @@ -150,7 +182,7 @@ class ManyToManyCompositeIdForeignKeyTest extends OrmFunctionalTestCase $inversed = $this->_em->find( 'Doctrine\Tests\Models\ValueConversionType\InversedManyToManyCompositeIdForeignKeyEntity', - array('id' => 'def', 'foreignEntity' => 'abc') + array('id1' => 'def', 'foreignEntity' => 'abc') ); foreach ($inversed->associatedEntities as $owning) { diff --git a/tests/Doctrine/Tests/ORM/Functional/ValueConversionType/ManyToManyCompositeIdTest.php b/tests/Doctrine/Tests/ORM/Functional/ValueConversionType/ManyToManyCompositeIdTest.php index d0f75b4cb..a21e964a2 100644 --- a/tests/Doctrine/Tests/ORM/Functional/ValueConversionType/ManyToManyCompositeIdTest.php +++ b/tests/Doctrine/Tests/ORM/Functional/ValueConversionType/ManyToManyCompositeIdTest.php @@ -32,7 +32,7 @@ class ManyToManyCompositeIdTest extends OrmFunctionalTestCase $inversed->id2 = 'def'; $owning = new Entity\OwningManyToManyCompositeIdEntity(); - $owning->id = 'ghi'; + $owning->id3 = 'ghi'; $inversed->associatedEntities->add($owning); $owning->associatedEntities->add($inversed); @@ -60,7 +60,7 @@ class ManyToManyCompositeIdTest extends OrmFunctionalTestCase $this->assertEquals('nop', $conn->fetchColumn('SELECT id1 FROM vct_inversed_manytomany_compositeid LIMIT 1')); $this->assertEquals('qrs', $conn->fetchColumn('SELECT id2 FROM vct_inversed_manytomany_compositeid LIMIT 1')); - $this->assertEquals('tuv', $conn->fetchColumn('SELECT id FROM vct_owning_manytomany_compositeid LIMIT 1')); + $this->assertEquals('tuv', $conn->fetchColumn('SELECT id3 FROM vct_owning_manytomany_compositeid LIMIT 1')); $this->assertEquals('nop', $conn->fetchColumn('SELECT inversed_id1 FROM vct_xref_manytomany_compositeid LIMIT 1')); $this->assertEquals('qrs', $conn->fetchColumn('SELECT inversed_id2 FROM vct_xref_manytomany_compositeid LIMIT 1')); @@ -103,7 +103,7 @@ class ManyToManyCompositeIdTest extends OrmFunctionalTestCase $this->assertEquals('abc', $inversed->id1); $this->assertEquals('def', $inversed->id2); - $this->assertEquals('ghi', $owning->id); + $this->assertEquals('ghi', $owning->id3); } /** diff --git a/tests/Doctrine/Tests/ORM/Functional/ValueConversionType/ManyToManyTest.php b/tests/Doctrine/Tests/ORM/Functional/ValueConversionType/ManyToManyTest.php index 1ff8d7ab2..0d99b27e2 100644 --- a/tests/Doctrine/Tests/ORM/Functional/ValueConversionType/ManyToManyTest.php +++ b/tests/Doctrine/Tests/ORM/Functional/ValueConversionType/ManyToManyTest.php @@ -28,10 +28,10 @@ class ManyToManyTest extends OrmFunctionalTestCase parent::setUp(); $inversed = new Entity\InversedManyToManyEntity(); - $inversed->id = 'abc'; + $inversed->id1 = 'abc'; $owning = new Entity\OwningManyToManyEntity(); - $owning->id = 'def'; + $owning->id2 = 'def'; $inversed->associatedEntities->add($owning); $owning->associatedEntities->add($inversed); @@ -56,9 +56,9 @@ class ManyToManyTest extends OrmFunctionalTestCase { $conn = $this->_em->getConnection(); - $this->assertEquals('nop', $conn->fetchColumn('SELECT id FROM vct_inversed_manytomany LIMIT 1')); + $this->assertEquals('nop', $conn->fetchColumn('SELECT id1 FROM vct_inversed_manytomany LIMIT 1')); - $this->assertEquals('qrs', $conn->fetchColumn('SELECT id FROM vct_owning_manytomany LIMIT 1')); + $this->assertEquals('qrs', $conn->fetchColumn('SELECT id2 FROM vct_owning_manytomany LIMIT 1')); $this->assertEquals('nop', $conn->fetchColumn('SELECT inversed_id FROM vct_xref_manytomany LIMIT 1')); $this->assertEquals('qrs', $conn->fetchColumn('SELECT owning_id FROM vct_xref_manytomany LIMIT 1')); @@ -98,8 +98,8 @@ class ManyToManyTest extends OrmFunctionalTestCase 'def' ); - $this->assertEquals('abc', $inversed->id); - $this->assertEquals('def', $owning->id); + $this->assertEquals('abc', $inversed->id1); + $this->assertEquals('def', $owning->id2); } /** diff --git a/tests/Doctrine/Tests/ORM/Functional/ValueConversionType/OneToManyCompositeIdForeignKeyTest.php b/tests/Doctrine/Tests/ORM/Functional/ValueConversionType/OneToManyCompositeIdForeignKeyTest.php index d0f571415..dedd4dbaf 100644 --- a/tests/Doctrine/Tests/ORM/Functional/ValueConversionType/OneToManyCompositeIdForeignKeyTest.php +++ b/tests/Doctrine/Tests/ORM/Functional/ValueConversionType/OneToManyCompositeIdForeignKeyTest.php @@ -29,15 +29,15 @@ class OneToManyCompositeIdForeignKeyTest extends OrmFunctionalTestCase parent::setUp(); $auxiliary = new Entity\AuxiliaryEntity(); - $auxiliary->id = 'abc'; + $auxiliary->id4 = 'abc'; $inversed = new Entity\InversedOneToManyCompositeIdForeignKeyEntity(); - $inversed->id = 'def'; + $inversed->id1 = 'def'; $inversed->foreignEntity = $auxiliary; $inversed->someProperty = 'some value to be loaded'; $owning = new Entity\OwningManyToOneCompositeIdForeignKeyEntity(); - $owning->id = 'ghi'; + $owning->id2 = 'ghi'; $inversed->associatedEntities->add($owning); $owning->associatedEntity = $inversed; @@ -63,10 +63,12 @@ class OneToManyCompositeIdForeignKeyTest extends OrmFunctionalTestCase { $conn = $this->_em->getConnection(); - $this->assertEquals('qrs', $conn->fetchColumn('SELECT id FROM vct_inversed_onetomany_compositeid_foreignkey LIMIT 1')); + $this->assertEquals('nop', $conn->fetchColumn('SELECT id4 FROM vct_auxiliary LIMIT 1')); + + $this->assertEquals('qrs', $conn->fetchColumn('SELECT id1 FROM vct_inversed_onetomany_compositeid_foreignkey LIMIT 1')); $this->assertEquals('nop', $conn->fetchColumn('SELECT foreign_id FROM vct_inversed_onetomany_compositeid_foreignkey LIMIT 1')); - $this->assertEquals('tuv', $conn->fetchColumn('SELECT id FROM vct_owning_manytoone_compositeid_foreignkey LIMIT 1')); + $this->assertEquals('tuv', $conn->fetchColumn('SELECT id2 FROM vct_owning_manytoone_compositeid_foreignkey LIMIT 1')); $this->assertEquals('qrs', $conn->fetchColumn('SELECT associated_id FROM vct_owning_manytoone_compositeid_foreignkey LIMIT 1')); $this->assertEquals('nop', $conn->fetchColumn('SELECT associated_foreign_id FROM vct_owning_manytoone_compositeid_foreignkey LIMIT 1')); } @@ -76,9 +78,14 @@ class OneToManyCompositeIdForeignKeyTest extends OrmFunctionalTestCase */ public function testThatEntitiesAreFetchedFromTheDatabase() { + $auxiliary = $this->_em->find( + 'Doctrine\Tests\Models\ValueConversionType\AuxiliaryEntity', + 'abc' + ); + $inversed = $this->_em->find( 'Doctrine\Tests\Models\ValueConversionType\InversedOneToManyCompositeIdForeignKeyEntity', - array('id' => 'def', 'foreignEntity' => 'abc') + array('id1' => 'def', 'foreignEntity' => 'abc') ); $owning = $this->_em->find( @@ -86,6 +93,7 @@ class OneToManyCompositeIdForeignKeyTest extends OrmFunctionalTestCase 'ghi' ); + $this->assertInstanceOf('Doctrine\Tests\Models\ValueConversionType\AuxiliaryEntity', $auxiliary); $this->assertInstanceOf('Doctrine\Tests\Models\ValueConversionType\InversedOneToManyCompositeIdForeignKeyEntity', $inversed); $this->assertInstanceOf('Doctrine\Tests\Models\ValueConversionType\OwningManyToOneCompositeIdForeignKeyEntity', $owning); } @@ -95,9 +103,14 @@ class OneToManyCompositeIdForeignKeyTest extends OrmFunctionalTestCase */ public function testThatTheValueOfIdentifiersAreConvertedBackAfterBeingFetchedFromTheDatabase() { + $auxiliary = $this->_em->find( + 'Doctrine\Tests\Models\ValueConversionType\AuxiliaryEntity', + 'abc' + ); + $inversed = $this->_em->find( 'Doctrine\Tests\Models\ValueConversionType\InversedOneToManyCompositeIdForeignKeyEntity', - array('id' => 'def', 'foreignEntity' => 'abc') + array('id1' => 'def', 'foreignEntity' => 'abc') ); $owning = $this->_em->find( @@ -105,9 +118,28 @@ class OneToManyCompositeIdForeignKeyTest extends OrmFunctionalTestCase 'ghi' ); - $this->assertEquals('def', $inversed->id); - $this->assertEquals('abc', $inversed->foreignEntity->id); - $this->assertEquals('ghi', $owning->id); + $this->assertEquals('abc', $auxiliary->id4); + $this->assertEquals('def', $inversed->id1); + $this->assertEquals('abc', $inversed->foreignEntity->id4); + $this->assertEquals('ghi', $owning->id2); + } + + /** + * @depends testThatTheValueOfIdentifiersAreConvertedBackAfterBeingFetchedFromTheDatabase + */ + public function testThatInversedEntityIsFetchedFromTheDatabaseUsingAuxiliaryEntityAsId() + { + $auxiliary = $this->_em->find( + 'Doctrine\Tests\Models\ValueConversionType\AuxiliaryEntity', + 'abc' + ); + + $inversed = $this->_em->find( + 'Doctrine\Tests\Models\ValueConversionType\InversedOneToManyCompositeIdForeignKeyEntity', + array('id1' => 'def', 'foreignEntity' => $auxiliary) + ); + + $this->assertInstanceOf('Doctrine\Tests\Models\ValueConversionType\InversedOneToManyCompositeIdForeignKeyEntity', $inversed); } /** @@ -132,7 +164,7 @@ class OneToManyCompositeIdForeignKeyTest extends OrmFunctionalTestCase { $inversed = $this->_em->find( 'Doctrine\Tests\Models\ValueConversionType\InversedOneToManyCompositeIdForeignKeyEntity', - array('id' => 'def', 'foreignEntity' => 'abc') + array('id1' => 'def', 'foreignEntity' => 'abc') ); $this->assertCount(1, $inversed->associatedEntities); diff --git a/tests/Doctrine/Tests/ORM/Functional/ValueConversionType/OneToManyCompositeIdTest.php b/tests/Doctrine/Tests/ORM/Functional/ValueConversionType/OneToManyCompositeIdTest.php index 297b46eb8..3f65e5c25 100644 --- a/tests/Doctrine/Tests/ORM/Functional/ValueConversionType/OneToManyCompositeIdTest.php +++ b/tests/Doctrine/Tests/ORM/Functional/ValueConversionType/OneToManyCompositeIdTest.php @@ -33,7 +33,7 @@ class OneToManyCompositeIdTest extends OrmFunctionalTestCase $inversed->someProperty = 'some value to be loaded'; $owning = new Entity\OwningManyToOneCompositeIdEntity(); - $owning->id = 'ghi'; + $owning->id3 = 'ghi'; $inversed->associatedEntities->add($owning); $owning->associatedEntity = $inversed; @@ -60,7 +60,7 @@ class OneToManyCompositeIdTest extends OrmFunctionalTestCase $this->assertEquals('nop', $conn->fetchColumn('SELECT id1 FROM vct_inversed_onetomany_compositeid LIMIT 1')); $this->assertEquals('qrs', $conn->fetchColumn('SELECT id2 FROM vct_inversed_onetomany_compositeid LIMIT 1')); - $this->assertEquals('tuv', $conn->fetchColumn('SELECT id FROM vct_owning_manytoone_compositeid LIMIT 1')); + $this->assertEquals('tuv', $conn->fetchColumn('SELECT id3 FROM vct_owning_manytoone_compositeid LIMIT 1')); $this->assertEquals('nop', $conn->fetchColumn('SELECT associated_id1 FROM vct_owning_manytoone_compositeid LIMIT 1')); $this->assertEquals('qrs', $conn->fetchColumn('SELECT associated_id2 FROM vct_owning_manytoone_compositeid LIMIT 1')); } @@ -101,7 +101,7 @@ class OneToManyCompositeIdTest extends OrmFunctionalTestCase $this->assertEquals('abc', $inversed->id1); $this->assertEquals('def', $inversed->id2); - $this->assertEquals('ghi', $owning->id); + $this->assertEquals('ghi', $owning->id3); } /** diff --git a/tests/Doctrine/Tests/ORM/Functional/ValueConversionType/OneToManyExtraLazyTest.php b/tests/Doctrine/Tests/ORM/Functional/ValueConversionType/OneToManyExtraLazyTest.php new file mode 100644 index 000000000..17429089a --- /dev/null +++ b/tests/Doctrine/Tests/ORM/Functional/ValueConversionType/OneToManyExtraLazyTest.php @@ -0,0 +1,111 @@ +useModelSet('vct_onetomany_extralazy'); + parent::setUp(); + + $inversed = new Entity\InversedOneToManyExtraLazyEntity(); + $inversed->id1 = 'abc'; + + $owning1 = new Entity\OwningManyToOneExtraLazyEntity(); + $owning1->id2 = 'def'; + + $owning2 = new Entity\OwningManyToOneExtraLazyEntity(); + $owning2->id2 = 'ghi'; + + $owning3 = new Entity\OwningManyToOneExtraLazyEntity(); + $owning3->id2 = 'jkl'; + + $inversed->associatedEntities->add($owning1); + $owning1->associatedEntity = $inversed; + $inversed->associatedEntities->add($owning2); + $owning2->associatedEntity = $inversed; + $inversed->associatedEntities->add($owning3); + $owning3->associatedEntity = $inversed; + + $this->_em->persist($inversed); + $this->_em->persist($owning1); + $this->_em->persist($owning2); + $this->_em->persist($owning3); + + $this->_em->flush(); + $this->_em->clear(); + } + + public static function tearDownAfterClass() + { + $conn = static::$_sharedConn; + + $conn->executeUpdate('DROP TABLE vct_owning_manytoone_extralazy'); + $conn->executeUpdate('DROP TABLE vct_inversed_onetomany_extralazy'); + } + + public function testThatExtraLazyCollectionIsCounted() + { + $inversed = $this->_em->find( + 'Doctrine\Tests\Models\ValueConversionType\InversedOneToManyExtraLazyEntity', + 'abc' + ); + + $this->assertEquals(3, $inversed->associatedEntities->count()); + } + + public function testThatExtraLazyCollectionContainsAnEntity() + { + $inversed = $this->_em->find( + 'Doctrine\Tests\Models\ValueConversionType\InversedOneToManyExtraLazyEntity', + 'abc' + ); + + $owning = $this->_em->find( + 'Doctrine\Tests\Models\ValueConversionType\OwningManyToOneExtraLazyEntity', + 'def' + ); + + $this->assertTrue($inversed->associatedEntities->contains($owning)); + } + + public function testThatExtraLazyCollectionContainsAnIndexbyKey() + { + $inversed = $this->_em->find( + 'Doctrine\Tests\Models\ValueConversionType\InversedOneToManyExtraLazyEntity', + 'abc' + ); + + $this->assertTrue($inversed->associatedEntities->containsKey('def')); + } + + public function testThatASliceOfTheExtraLazyCollectionIsLoaded() + { + $inversed = $this->_em->find( + 'Doctrine\Tests\Models\ValueConversionType\InversedOneToManyExtraLazyEntity', + 'abc' + ); + + $this->assertCount(2, $inversed->associatedEntities->slice(0, 2)); + } +} diff --git a/tests/Doctrine/Tests/ORM/Functional/ValueConversionType/OneToManyTest.php b/tests/Doctrine/Tests/ORM/Functional/ValueConversionType/OneToManyTest.php index 25e9135c3..cb8d0f08a 100644 --- a/tests/Doctrine/Tests/ORM/Functional/ValueConversionType/OneToManyTest.php +++ b/tests/Doctrine/Tests/ORM/Functional/ValueConversionType/OneToManyTest.php @@ -28,11 +28,11 @@ class OneToManyTest extends OrmFunctionalTestCase parent::setUp(); $inversed = new Entity\InversedOneToManyEntity(); - $inversed->id = 'abc'; + $inversed->id1 = 'abc'; $inversed->someProperty = 'some value to be loaded'; $owning = new Entity\OwningManyToOneEntity(); - $owning->id = 'def'; + $owning->id2 = 'def'; $inversed->associatedEntities->add($owning); $owning->associatedEntity = $inversed; @@ -56,9 +56,9 @@ class OneToManyTest extends OrmFunctionalTestCase { $conn = $this->_em->getConnection(); - $this->assertEquals('nop', $conn->fetchColumn('SELECT id FROM vct_inversed_onetomany LIMIT 1')); + $this->assertEquals('nop', $conn->fetchColumn('SELECT id1 FROM vct_inversed_onetomany LIMIT 1')); - $this->assertEquals('qrs', $conn->fetchColumn('SELECT id FROM vct_owning_manytoone LIMIT 1')); + $this->assertEquals('qrs', $conn->fetchColumn('SELECT id2 FROM vct_owning_manytoone LIMIT 1')); $this->assertEquals('nop', $conn->fetchColumn('SELECT associated_id FROM vct_owning_manytoone LIMIT 1')); } @@ -96,8 +96,8 @@ class OneToManyTest extends OrmFunctionalTestCase 'def' ); - $this->assertEquals('abc', $inversed->id); - $this->assertEquals('def', $owning->id); + $this->assertEquals('abc', $inversed->id1); + $this->assertEquals('def', $owning->id2); } /** diff --git a/tests/Doctrine/Tests/ORM/Functional/ValueConversionType/OneToOneCompositeIdForeignKeyTest.php b/tests/Doctrine/Tests/ORM/Functional/ValueConversionType/OneToOneCompositeIdForeignKeyTest.php index b3b58d245..fc0c6b463 100644 --- a/tests/Doctrine/Tests/ORM/Functional/ValueConversionType/OneToOneCompositeIdForeignKeyTest.php +++ b/tests/Doctrine/Tests/ORM/Functional/ValueConversionType/OneToOneCompositeIdForeignKeyTest.php @@ -29,15 +29,15 @@ class OneToOneCompositeIdForeignKeyTest extends OrmFunctionalTestCase parent::setUp(); $auxiliary = new Entity\AuxiliaryEntity(); - $auxiliary->id = 'abc'; + $auxiliary->id4 = 'abc'; $inversed = new Entity\InversedOneToOneCompositeIdForeignKeyEntity(); - $inversed->id = 'def'; + $inversed->id1 = 'def'; $inversed->foreignEntity = $auxiliary; $inversed->someProperty = 'some value to be loaded'; $owning = new Entity\OwningOneToOneCompositeIdForeignKeyEntity(); - $owning->id = 'ghi'; + $owning->id2 = 'ghi'; $inversed->associatedEntity = $owning; $owning->associatedEntity = $inversed; @@ -63,10 +63,12 @@ class OneToOneCompositeIdForeignKeyTest extends OrmFunctionalTestCase { $conn = $this->_em->getConnection(); - $this->assertEquals('qrs', $conn->fetchColumn('SELECT id FROM vct_inversed_onetoone_compositeid_foreignkey LIMIT 1')); + $this->assertEquals('nop', $conn->fetchColumn('SELECT id4 FROM vct_auxiliary LIMIT 1')); + + $this->assertEquals('qrs', $conn->fetchColumn('SELECT id1 FROM vct_inversed_onetoone_compositeid_foreignkey LIMIT 1')); $this->assertEquals('nop', $conn->fetchColumn('SELECT foreign_id FROM vct_inversed_onetoone_compositeid_foreignkey LIMIT 1')); - $this->assertEquals('tuv', $conn->fetchColumn('SELECT id FROM vct_owning_onetoone_compositeid_foreignkey LIMIT 1')); + $this->assertEquals('tuv', $conn->fetchColumn('SELECT id2 FROM vct_owning_onetoone_compositeid_foreignkey LIMIT 1')); $this->assertEquals('qrs', $conn->fetchColumn('SELECT associated_id FROM vct_owning_onetoone_compositeid_foreignkey LIMIT 1')); $this->assertEquals('nop', $conn->fetchColumn('SELECT associated_foreign_id FROM vct_owning_onetoone_compositeid_foreignkey LIMIT 1')); } @@ -76,9 +78,14 @@ class OneToOneCompositeIdForeignKeyTest extends OrmFunctionalTestCase */ public function testThatEntitiesAreFetchedFromTheDatabase() { + $auxiliary = $this->_em->find( + 'Doctrine\Tests\Models\ValueConversionType\AuxiliaryEntity', + 'abc' + ); + $inversed = $this->_em->find( 'Doctrine\Tests\Models\ValueConversionType\InversedOneToOneCompositeIdForeignKeyEntity', - array('id' => 'def', 'foreignEntity' => 'abc') + array('id1' => 'def', 'foreignEntity' => 'abc') ); $owning = $this->_em->find( @@ -86,6 +93,7 @@ class OneToOneCompositeIdForeignKeyTest extends OrmFunctionalTestCase 'ghi' ); + $this->assertInstanceOf('Doctrine\Tests\Models\ValueConversionType\AuxiliaryEntity', $auxiliary); $this->assertInstanceOf('Doctrine\Tests\Models\ValueConversionType\InversedOneToOneCompositeIdForeignKeyEntity', $inversed); $this->assertInstanceOf('Doctrine\Tests\Models\ValueConversionType\OwningOneToOneCompositeIdForeignKeyEntity', $owning); } @@ -95,9 +103,14 @@ class OneToOneCompositeIdForeignKeyTest extends OrmFunctionalTestCase */ public function testThatTheValueOfIdentifiersAreConvertedBackAfterBeingFetchedFromTheDatabase() { + $auxiliary = $this->_em->find( + 'Doctrine\Tests\Models\ValueConversionType\AuxiliaryEntity', + 'abc' + ); + $inversed = $this->_em->find( 'Doctrine\Tests\Models\ValueConversionType\InversedOneToOneCompositeIdForeignKeyEntity', - array('id' => 'def', 'foreignEntity' => 'abc') + array('id1' => 'def', 'foreignEntity' => 'abc') ); $owning = $this->_em->find( @@ -105,9 +118,28 @@ class OneToOneCompositeIdForeignKeyTest extends OrmFunctionalTestCase 'ghi' ); - $this->assertEquals('def', $inversed->id); - $this->assertEquals('abc', $inversed->foreignEntity->id); - $this->assertEquals('ghi', $owning->id); + $this->assertEquals('abc', $auxiliary->id4); + $this->assertEquals('def', $inversed->id1); + $this->assertEquals('abc', $inversed->foreignEntity->id4); + $this->assertEquals('ghi', $owning->id2); + } + + /** + * @depends testThatTheValueOfIdentifiersAreConvertedBackAfterBeingFetchedFromTheDatabase + */ + public function testThatInversedEntityIsFetchedFromTheDatabaseUsingAuxiliaryEntityAsId() + { + $auxiliary = $this->_em->find( + 'Doctrine\Tests\Models\ValueConversionType\AuxiliaryEntity', + 'abc' + ); + + $inversed = $this->_em->find( + 'Doctrine\Tests\Models\ValueConversionType\InversedOneToOneCompositeIdForeignKeyEntity', + array('id1' => 'def', 'foreignEntity' => $auxiliary) + ); + + $this->assertInstanceOf('Doctrine\Tests\Models\ValueConversionType\InversedOneToOneCompositeIdForeignKeyEntity', $inversed); } /** @@ -132,7 +164,7 @@ class OneToOneCompositeIdForeignKeyTest extends OrmFunctionalTestCase { $inversed = $this->_em->find( 'Doctrine\Tests\Models\ValueConversionType\InversedOneToOneCompositeIdForeignKeyEntity', - array('id' => 'def', 'foreignEntity' => 'abc') + array('id1' => 'def', 'foreignEntity' => 'abc') ); $this->assertInstanceOf('Doctrine\Tests\Models\ValueConversionType\OwningOneToOneCompositeIdForeignKeyEntity', $inversed->associatedEntity); diff --git a/tests/Doctrine/Tests/ORM/Functional/ValueConversionType/OneToOneCompositeIdTest.php b/tests/Doctrine/Tests/ORM/Functional/ValueConversionType/OneToOneCompositeIdTest.php index 0390eb7f5..262792169 100644 --- a/tests/Doctrine/Tests/ORM/Functional/ValueConversionType/OneToOneCompositeIdTest.php +++ b/tests/Doctrine/Tests/ORM/Functional/ValueConversionType/OneToOneCompositeIdTest.php @@ -33,7 +33,7 @@ class OneToOneCompositeIdTest extends OrmFunctionalTestCase $inversed->someProperty = 'some value to be loaded'; $owning = new Entity\OwningOneToOneCompositeIdEntity(); - $owning->id = 'ghi'; + $owning->id3 = 'ghi'; $inversed->associatedEntity = $owning; $owning->associatedEntity = $inversed; @@ -60,7 +60,7 @@ class OneToOneCompositeIdTest extends OrmFunctionalTestCase $this->assertEquals('nop', $conn->fetchColumn('SELECT id1 FROM vct_inversed_onetoone_compositeid LIMIT 1')); $this->assertEquals('qrs', $conn->fetchColumn('SELECT id2 FROM vct_inversed_onetoone_compositeid LIMIT 1')); - $this->assertEquals('tuv', $conn->fetchColumn('SELECT id FROM vct_owning_onetoone_compositeid LIMIT 1')); + $this->assertEquals('tuv', $conn->fetchColumn('SELECT id3 FROM vct_owning_onetoone_compositeid LIMIT 1')); $this->assertEquals('nop', $conn->fetchColumn('SELECT associated_id1 FROM vct_owning_onetoone_compositeid LIMIT 1')); $this->assertEquals('qrs', $conn->fetchColumn('SELECT associated_id2 FROM vct_owning_onetoone_compositeid LIMIT 1')); } @@ -101,7 +101,7 @@ class OneToOneCompositeIdTest extends OrmFunctionalTestCase $this->assertEquals('abc', $inversed->id1); $this->assertEquals('def', $inversed->id2); - $this->assertEquals('ghi', $owning->id); + $this->assertEquals('ghi', $owning->id3); } /** diff --git a/tests/Doctrine/Tests/ORM/Functional/ValueConversionType/OneToOneTest.php b/tests/Doctrine/Tests/ORM/Functional/ValueConversionType/OneToOneTest.php index 2cdaadcaa..fdf4fbabc 100644 --- a/tests/Doctrine/Tests/ORM/Functional/ValueConversionType/OneToOneTest.php +++ b/tests/Doctrine/Tests/ORM/Functional/ValueConversionType/OneToOneTest.php @@ -28,11 +28,11 @@ class OneToOneTest extends OrmFunctionalTestCase parent::setUp(); $inversed = new Entity\InversedOneToOneEntity(); - $inversed->id = 'abc'; + $inversed->id1 = 'abc'; $inversed->someProperty = 'some value to be loaded'; $owning = new Entity\OwningOneToOneEntity(); - $owning->id = 'def'; + $owning->id2 = 'def'; $inversed->associatedEntity = $owning; $owning->associatedEntity = $inversed; @@ -56,9 +56,9 @@ class OneToOneTest extends OrmFunctionalTestCase { $conn = $this->_em->getConnection(); - $this->assertEquals('nop', $conn->fetchColumn('SELECT id FROM vct_inversed_onetoone LIMIT 1')); + $this->assertEquals('nop', $conn->fetchColumn('SELECT id1 FROM vct_inversed_onetoone LIMIT 1')); - $this->assertEquals('qrs', $conn->fetchColumn('SELECT id FROM vct_owning_onetoone LIMIT 1')); + $this->assertEquals('qrs', $conn->fetchColumn('SELECT id2 FROM vct_owning_onetoone LIMIT 1')); $this->assertEquals('nop', $conn->fetchColumn('SELECT associated_id FROM vct_owning_onetoone LIMIT 1')); } @@ -96,8 +96,8 @@ class OneToOneTest extends OrmFunctionalTestCase 'def' ); - $this->assertEquals('abc', $inversed->id); - $this->assertEquals('def', $owning->id); + $this->assertEquals('abc', $inversed->id1); + $this->assertEquals('def', $owning->id2); } /** diff --git a/tests/Doctrine/Tests/OrmFunctionalTestCase.php b/tests/Doctrine/Tests/OrmFunctionalTestCase.php index 0af76186c..b75137f51 100644 --- a/tests/Doctrine/Tests/OrmFunctionalTestCase.php +++ b/tests/Doctrine/Tests/OrmFunctionalTestCase.php @@ -225,6 +225,10 @@ abstract class OrmFunctionalTestCase extends OrmTestCase 'Doctrine\Tests\Models\ValueConversionType\InversedOneToManyCompositeIdForeignKeyEntity', 'Doctrine\Tests\Models\ValueConversionType\OwningManyToOneCompositeIdForeignKeyEntity' ), + 'vct_onetomany_extralazy' => array( + 'Doctrine\Tests\Models\ValueConversionType\InversedOneToManyExtraLazyEntity', + 'Doctrine\Tests\Models\ValueConversionType\OwningManyToOneExtraLazyEntity' + ), 'vct_manytomany' => array( 'Doctrine\Tests\Models\ValueConversionType\InversedManyToManyEntity', 'Doctrine\Tests\Models\ValueConversionType\OwningManyToManyEntity' @@ -429,6 +433,11 @@ abstract class OrmFunctionalTestCase extends OrmTestCase $conn->executeUpdate('DELETE FROM vct_auxiliary'); } + if (isset($this->_usedModelSets['vct_onetomany_extralazy'])) { + $conn->executeUpdate('DELETE FROM vct_owning_manytoone_extralazy'); + $conn->executeUpdate('DELETE FROM vct_inversed_onetomany_extralazy'); + } + if (isset($this->_usedModelSets['vct_manytomany'])) { $conn->executeUpdate('DELETE FROM vct_xref_manytomany'); $conn->executeUpdate('DELETE FROM vct_owning_manytomany');