Merge branch 'DDC-612'
* DDC-612: Third parameter to Expr::substring is now optional
This commit is contained in:
commit
dd21c54824
@ -470,9 +470,13 @@ class Expr
|
|||||||
* @param integer $len Length of crop. May accept negative values.
|
* @param integer $len Length of crop. May accept negative values.
|
||||||
* @return Expr\Func
|
* @return Expr\Func
|
||||||
*/
|
*/
|
||||||
public function substring($x, $from, $len)
|
public function substring($x, $from, $len = null)
|
||||||
{
|
{
|
||||||
return new Expr\Func('SUBSTRING', array($x, $from, $len));
|
$args = array($x, $from);
|
||||||
|
if (null !== $len) {
|
||||||
|
$args[] = $len;
|
||||||
|
}
|
||||||
|
return new Expr\Func('SUBSTRING', $args);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -185,6 +185,15 @@ class ExprTest extends \Doctrine\Tests\OrmTestCase
|
|||||||
$this->assertEquals('SUBSTRING(a.title, 0, 25)', (string) $this->_expr->substring('a.title', 0, 25));
|
$this->assertEquals('SUBSTRING(a.title, 0, 25)', (string) $this->_expr->substring('a.title', 0, 25));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @group regression
|
||||||
|
* @group DDC-612
|
||||||
|
*/
|
||||||
|
public function testSubstringExprAcceptsTwoArguments()
|
||||||
|
{
|
||||||
|
$this->assertEquals('SUBSTRING(a.title, 0)', (string) $this->_expr->substring('a.title', 5));
|
||||||
|
}
|
||||||
|
|
||||||
public function testLowerExpr()
|
public function testLowerExpr()
|
||||||
{
|
{
|
||||||
$this->assertEquals('LOWER(u.first_name)', (string) $this->_expr->lower('u.first_name'));
|
$this->assertEquals('LOWER(u.first_name)', (string) $this->_expr->lower('u.first_name'));
|
||||||
|
Loading…
x
Reference in New Issue
Block a user