1
0
mirror of synced 2025-02-02 13:31:45 +03:00

Regression test: HAVING clause does not translate variable name when used with * and / math operators

This commit is contained in:
Alessandro Lai 2016-01-08 17:56:41 +01:00 committed by Marco Pivetta
parent d05aa6a5e0
commit 6279c80e05

View File

@ -2242,6 +2242,27 @@ class SelectSqlGenerationTest extends \Doctrine\Tests\OrmTestCase
'SELECT COUNT(c0_.name) AS sclr_0 FROM cms_users c0_ HAVING sclr_0 IS NULL' 'SELECT COUNT(c0_.name) AS sclr_0 FROM cms_users c0_ HAVING sclr_0 IS NULL'
); );
} }
/**
* GitHub issue #4764: https://github.com/doctrine/doctrine2/issues/4764
* @group DDC-3907
* @dataProvider mathematicOperatorsProvider
*/
public function testHavingRegressionUsingVariableWithMathOperatorsExpression($operator)
{
$this->assertSqlGeneration(
'SELECT COUNT(u.name) AS countName FROM Doctrine\Tests\Models\CMS\CmsUser u HAVING 1 ' . $operator . ' countName > 0',
'SELECT COUNT(c0_.name) AS sclr_0 FROM cms_users c0_ HAVING 1 ' . $operator . ' sclr_0 > 0'
);
}
/**
* @return array
*/
public function mathematicOperatorsProvider()
{
return [['+'], ['-'], ['*'], ['/']];
}
} }
class MyAbsFunction extends \Doctrine\ORM\Query\AST\Functions\FunctionNode class MyAbsFunction extends \Doctrine\ORM\Query\AST\Functions\FunctionNode