Skip to content

Commit 892c017

Browse files
janedbalondrejmirtes
authored andcommitted
Add test that QB passed to other method is not tracked
1 parent b5d2adf commit 892c017

File tree

1 file changed

+15
-0
lines changed

1 file changed

+15
-0
lines changed

tests/Type/Doctrine/data/QueryResult/queryBuilderExpressionTypeResolver.php

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -36,6 +36,16 @@ public function testQueryTypeIsInferredOnAcrossMethodsEvenWhenVariableAssignment
3636
assertType('Doctrine\ORM\Query<null, QueryResult\Entities\Many>', $queryBuilder->getQuery());
3737
}
3838

39+
public function testQueryBuilderPassedElsewhereNotTracked(EntityManagerInterface $em): void
40+
{
41+
$queryBuilder = $this->getQueryBuilder($em);
42+
$queryBuilder->indexBy('m', 'm.stringColumn');
43+
44+
$this->adjustQueryBuilderToIndexByInt($queryBuilder);
45+
46+
assertType('Doctrine\ORM\Query<string, QueryResult\Entities\Many>', $queryBuilder->getQuery());
47+
}
48+
3949
public function testDiveIntoCustomEntityRepository(EntityManagerInterface $em): void
4050
{
4151
$queryBuilder = $this->myRepository->getCustomQueryBuilder($em);
@@ -48,6 +58,11 @@ public function testFirstClassCallableDoesNotFail(EntityManagerInterface $em): v
4858
$this->getQueryBuilder(...);
4959
}
5060

61+
private function adjustQueryBuilderToIndexByInt(QueryBuilder $qb): void
62+
{
63+
$qb->indexBy('m', 'm.intColumn');
64+
}
65+
5166
private function getQueryBuilder(EntityManagerInterface $em): QueryBuilder
5267
{
5368
return $em->createQueryBuilder()

0 commit comments

Comments
 (0)