Rajout de doctrine/orm
[zf2.biz/application_blanche.git] / vendor / doctrine / common / tests / Doctrine / Tests / Common / Collections / ExpressionBuilderTest.php
diff --git a/vendor/doctrine/common/tests/Doctrine/Tests/Common/Collections/ExpressionBuilderTest.php b/vendor/doctrine/common/tests/Doctrine/Tests/Common/Collections/ExpressionBuilderTest.php
new file mode 100644 (file)
index 0000000..68896b3
--- /dev/null
@@ -0,0 +1,114 @@
+<?php
+namespace Doctrine\Tests\Common\Collections;
+
+use Doctrine\Common\Collections\ExpressionBuilder;
+use Doctrine\Common\Collections\Expr\Comparison;
+use Doctrine\Common\Collections\Expr\CompositeExpression;
+
+/**
+ * @group DDC-1637
+ */
+class ExpressionBuilderTest extends \PHPUnit_Framework_TestCase
+{
+    private $builder;
+
+    public function setUp()
+    {
+        $this->builder = new ExpressionBuilder();
+    }
+
+    public function testAndX()
+    {
+        $expr = $this->builder->andX($this->builder->eq("a", "b"));
+
+        $this->assertInstanceOf("Doctrine\Common\Collections\Expr\CompositeExpression", $expr);
+        $this->assertEquals(CompositeExpression::TYPE_AND, $expr->getType());
+    }
+
+    public function testOrX()
+    {
+        $expr = $this->builder->orX($this->builder->eq("a", "b"));
+
+        $this->assertInstanceOf("Doctrine\Common\Collections\Expr\CompositeExpression", $expr);
+        $this->assertEquals(CompositeExpression::TYPE_OR, $expr->getType());
+    }
+
+    public function testInvalidAndXArgument()
+    {
+        $this->setExpectedException("RuntimeException");
+        $this->builder->andX("foo");
+    }
+
+    public function testEq()
+    {
+        $expr = $this->builder->eq("a", "b");
+
+        $this->assertInstanceOf("Doctrine\Common\Collections\Expr\Comparison", $expr);
+        $this->assertEquals(Comparison::EQ, $expr->getOperator());
+    }
+
+    public function testNeq()
+    {
+        $expr = $this->builder->neq("a", "b");
+
+        $this->assertInstanceOf("Doctrine\Common\Collections\Expr\Comparison", $expr);
+        $this->assertEquals(Comparison::NEQ, $expr->getOperator());
+    }
+
+    public function testLt()
+    {
+        $expr = $this->builder->lt("a", "b");
+
+        $this->assertInstanceOf("Doctrine\Common\Collections\Expr\Comparison", $expr);
+        $this->assertEquals(Comparison::LT, $expr->getOperator());
+    }
+
+    public function testGt()
+    {
+        $expr = $this->builder->gt("a", "b");
+
+        $this->assertInstanceOf("Doctrine\Common\Collections\Expr\Comparison", $expr);
+        $this->assertEquals(Comparison::GT, $expr->getOperator());
+    }
+
+    public function testGte()
+    {
+        $expr = $this->builder->gte("a", "b");
+
+        $this->assertInstanceOf("Doctrine\Common\Collections\Expr\Comparison", $expr);
+        $this->assertEquals(Comparison::GTE, $expr->getOperator());
+    }
+
+    public function testLte()
+    {
+        $expr = $this->builder->lte("a", "b");
+
+        $this->assertInstanceOf("Doctrine\Common\Collections\Expr\Comparison", $expr);
+        $this->assertEquals(Comparison::LTE, $expr->getOperator());
+    }
+
+    public function testIn()
+    {
+        $expr = $this->builder->in("a", array("b"));
+
+        $this->assertInstanceOf("Doctrine\Common\Collections\Expr\Comparison", $expr);
+        $this->assertEquals(Comparison::IN, $expr->getOperator());
+    }
+
+    public function testNotIn()
+    {
+        $expr = $this->builder->notIn("a", array("b"));
+
+        $this->assertInstanceOf("Doctrine\Common\Collections\Expr\Comparison", $expr);
+        $this->assertEquals(Comparison::NIN, $expr->getOperator());
+    }
+
+    public function testIsNull()
+    {
+        $expr = $this->builder->isNull("a");
+
+        $this->assertInstanceOf("Doctrine\Common\Collections\Expr\Comparison", $expr);
+        $this->assertEquals(Comparison::IS, $expr->getOperator());
+    }
+}
+