protected assertInstanceOfCompiledExpression ( |
||
$actual | ||
$message | string |
public function testFromZvalNull() { $result = CompiledExpression::fromZvalValue(null); parent::assertInstanceOfCompiledExpression($result); parent::assertSame(CompiledExpression::NULL, $result->getType()); parent::assertSame(null, $result->getValue()); }
public function testEvalOpSuccess() { $baseExpression = new Node\Expr\Eval_($this->newScalarExpr("echo 'test';")); $compiledExpression = $this->compileExpression($baseExpression); parent::assertInstanceOfCompiledExpression($compiledExpression); parent::assertSame(CompiledExpression::NULL, $compiledExpression->getType()); parent::assertSame(null, $compiledExpression->getValue()); }
public function testExitOpSuccess() { $baseExpression = new Node\Expr\Exit_($this->newScalarExpr("test")); $compiledExpression = $this->compileExpression($baseExpression); parent::assertInstanceOfCompiledExpression($compiledExpression); parent::assertSame(CompiledExpression::STRING, $compiledExpression->getType()); parent::assertSame("test", $compiledExpression->getValue()); }
public function testErrorSuppressSuccess() { $baseExpression = new Node\Expr\ErrorSuppress(new Node\Expr\Print_($this->newScalarExpr("test"))); $compiledExpression = $this->compileExpression($baseExpression); parent::assertInstanceOfCompiledExpression($compiledExpression); parent::assertSame(CompiledExpression::INTEGER, $compiledExpression->getType()); parent::assertSame(1, $compiledExpression->getValue()); }
public function testTernaryFalse() { // (2 == 3) ? "if" : "else" $baseExpression = new Node\Expr\Ternary(new Node\Expr\BinaryOp\Equal($this->newScalarExpr(2), $this->newScalarExpr(3)), $this->newScalarExpr("if"), $this->newScalarExpr("else")); $compiledExpression = $this->compileExpression($baseExpression); parent::assertInstanceOfCompiledExpression($compiledExpression); parent::assertSame(CompiledExpression::STRING, $compiledExpression->getType()); parent::assertSame("else", $compiledExpression->getValue()); }
public function testEmptyVarNotExisting() { $context = $this->getContext(); $baseExpression = new Node\Expr\Empty_(new Node\Expr\Variable(new Node\Name("name"))); $compiledExpression = $this->compileExpression($baseExpression, $context); parent::assertInstanceOfCompiledExpression($compiledExpression); parent::assertSame(CompiledExpression::BOOLEAN, $compiledExpression->getType()); parent::assertFalse($compiledExpression->getValue()); }
public function testCoalesceVarNotExisting() { $context = $this->getContext(); $variable = new VariableNode(new Name("name")); $else = parent::newScalarExpr("else"); $baseExpression = new Node\Expr\BinaryOp\Coalesce($variable, $else); $compiledExpression = $this->compileExpression($baseExpression, $context); parent::assertInstanceOfCompiledExpression($compiledExpression); parent::assertSame(CompiledExpression::STRING, $compiledExpression->getType()); parent::assertSame("else", $compiledExpression->getValue()); }