useModelSet('ddc3346'); parent::setUp(); $this->loadAuthorFixture(); } public function testFindOneWithEagerFetchWillNotHydrateLimitedCollection() { /** @var DDC3346Author $author */ $author = $this->_em->getRepository(DDC3346Author::CLASSNAME)->findOneBy( array('username' => "bwoogy") ); $this->assertCount(2, $author->articles); } public function testFindLimitedWithEagerFetchWillNotHydrateLimitedCollection() { /** @var DDC3346Author[] $authors */ $authors = $this->_em->getRepository(DDC3346Author::CLASSNAME)->findBy( array('username' => "bwoogy"), null, 1 ); $this->assertCount(1, $authors); $this->assertCount(2, $authors[0]->articles); } public function testFindWithEagerFetchAndOffsetWillNotHydrateLimitedCollection() { /** @var DDC3346Author[] $authors */ $authors = $this->_em->getRepository(DDC3346Author::CLASSNAME)->findBy( array('username' => "bwoogy"), null, null, 1 ); $this->assertCount(1, $authors); $this->assertCount(2, $authors[0]->articles); } private function loadAuthorFixture() { $user = new DDC3346Author(); $user->username = "bwoogy"; $article1 = new DDC3346Article(); $article1->setAuthor($user); $article2 = new DDC3346Article(); $article2->setAuthor($user); $this->_em->persist($user); $this->_em->persist($article1); $this->_em->persist($article2); $this->_em->flush(); $this->_em->clear(); } }