12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182 |
- <?php
- namespace Doctrine\Tests\Common\Collections;
- use Doctrine\Common\Collections\Criteria;
- use Doctrine\Common\Collections\Expr\Comparison;
- use Doctrine\Common\Collections\Expr\CompositeExpression;
- class CriteriaTest extends \PHPUnit_Framework_TestCase
- {
- public function testCreate()
- {
- $criteria = Criteria::create();
- $this->assertInstanceOf("Doctrine\Common\Collections\Criteria", $criteria);
- }
- public function testConstructor()
- {
- $expr = new Comparison("field", "=", "value");
- $criteria = new Criteria($expr, array("foo" => "ASC"), 10, 20);
- $this->assertSame($expr, $criteria->getWhereExpression());
- $this->assertEquals(array("foo" => "ASC"), $criteria->getOrderings());
- $this->assertEquals(10, $criteria->getFirstResult());
- $this->assertEquals(20, $criteria->getMaxResults());
- }
- public function testWhere()
- {
- $expr = new Comparison("field", "=", "value");
- $criteria = new Criteria();
- $criteria->where($expr);
- $this->assertSame($expr, $criteria->getWhereExpression());
- }
- public function testAndWhere()
- {
- $expr = new Comparison("field", "=", "value");
- $criteria = new Criteria();
- $criteria->where($expr);
- $expr = $criteria->getWhereExpression();
- $criteria->andWhere($expr);
- $where = $criteria->getWhereExpression();
- $this->assertInstanceOf('Doctrine\Common\Collections\Expr\CompositeExpression', $where);
- $this->assertEquals(CompositeExpression::TYPE_AND, $where->getType());
- $this->assertSame(array($expr, $expr), $where->getExpressionList());
- }
- public function testOrWhere()
- {
- $expr = new Comparison("field", "=", "value");
- $criteria = new Criteria();
- $criteria->where($expr);
- $expr = $criteria->getWhereExpression();
- $criteria->orWhere($expr);
- $where = $criteria->getWhereExpression();
- $this->assertInstanceOf('Doctrine\Common\Collections\Expr\CompositeExpression', $where);
- $this->assertEquals(CompositeExpression::TYPE_OR, $where->getType());
- $this->assertSame(array($expr, $expr), $where->getExpressionList());
- }
- public function testOrderings()
- {
- $criteria = Criteria::create()
- ->orderBy(array("foo" => "ASC"));
- $this->assertEquals(array("foo" => "ASC"), $criteria->getOrderings());
- }
- public function testExpr()
- {
- $this->assertInstanceOf('Doctrine\Common\Collections\ExpressionBuilder', Criteria::expr());
- }
- }
|