Example #1
0
 public function testCanCompareExpressionNodes()
 {
     $node = new ExpressionNode(new VariableNode('x'), '+', new VariableNode('y'));
     $node2 = new ExpressionNode(new VariableNode('x'), '-', new VariableNode('y'));
     $node3 = new ExpressionNode(new VariableNode('x'), '-', null);
     $node4 = new ExpressionNode(null, '-', new VariableNode('y'));
     $other = new VariableNode('x');
     $this->assertFalse($node->compareTo(null));
     $this->assertFalse($node->compareTo($other));
     $this->assertTrue($node->compareTo($node));
     $this->assertTrue($node2->compareTo($node2));
     $this->assertTrue($node3->compareTo($node3));
     $this->assertTrue($node4->compareTo($node4));
     $this->assertFalse($node->compareTo($node2));
     $this->assertFalse($node->compareTo($node3));
     $this->assertFalse($node->compareTo($node4));
     $this->assertFalse($node2->compareTo($node3));
     $this->assertFalse($node2->compareTo($node4));
     $this->assertFalse($node3->compareTo($node4));
     $this->assertFalse($node2->compareTo($node4));
 }