diff --git a/tests/Doctrine/Tests/ORM/Functional/Ticket/DDC3967Test.php b/tests/Doctrine/Tests/ORM/Functional/Ticket/DDC3967Test.php new file mode 100644 index 00000000000..d5c3dd554ff --- /dev/null +++ b/tests/Doctrine/Tests/ORM/Functional/Ticket/DDC3967Test.php @@ -0,0 +1,35 @@ +loadFixturesCountries(); + $this->_em->getCache()->evictEntityRegion(Country::CLASSNAME); + $this->_em->clear(); + } + + public function testIdentifierCachedWithProperType() + { + $country = array_pop($this->countries); + $id = $country->getId(); + + // First time, loaded from database + $this->_em->find(Country::CLASSNAME, "$id"); + $this->_em->clear(); + + // Second time, loaded from cache + /** @var Country $country */ + $country = $this->_em->find(Country::CLASSNAME, "$id"); + + // Identifier type should be integer + $this->assertSame($country->getId(), $id); + } +}