1
0
mirror of synced 2025-02-20 14:13:15 +03:00

Merge branch 'master' of github.com:doctrine/doctrine2

This commit is contained in:
Jonathan H. Wage 2010-05-25 18:11:52 -04:00
commit b9965bfb1c
3 changed files with 17 additions and 4 deletions

4
.gitignore vendored
View File

@ -5,5 +5,5 @@ reports/
dist/
download/
lib/api/
lib/Doctrine/Common/
lib/Doctrine/DBAL/
lib/Doctrine/Common
lib/Doctrine/DBAL

View File

@ -470,9 +470,13 @@ class Expr
* @param integer $len Length of crop. May accept negative values.
* @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);
}
/**

View File

@ -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));
}
/**
* @group regression
* @group DDC-612
*/
public function testSubstringExprAcceptsTwoArguments()
{
$this->assertEquals('SUBSTRING(a.title, 0)', (string) $this->_expr->substring('a.title', 5));
}
public function testLowerExpr()
{
$this->assertEquals('LOWER(u.first_name)', (string) $this->_expr->lower('u.first_name'));